哈佛架构

✍ dations ◷ 2025-04-25 13:21:04 #哈佛架构
哈佛架构(英语:Harvard architecture)是一种将程序指令储存和数据储存分开的存储器结构(Split Cache)。这一词起源于Harvard Mark I型继电器式计算机,它存储指令(24位)在纸带上和数据于机电计数器上。 中央处理器首先到程序指令储存器中读取程序指令内容,解码后得到数据地址,再到相应的数据储存器中读取数据,并进行下一步的操作(通常是执行)。程序指令储存和数据储存分开,数据和指令的储存可以同时进行,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。程序需要由操作者加载;处理器无法自行初始化。如今,大多数处理器由于性能原因性能实现了这种独立信号通路的结构,但实际上大多是应用了改进的哈佛结构,所以它们可以支持从磁盘将一个程序作为数据加载并执行的任务。哈佛架构的微处理器通常具有较高的执行效率。其程序指令和数据指令分开组织和储存的,执行时可以预先读取下一条指令。当前使用哈佛架构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、Atmel公司的AVR系列和安谋公司的ARM9、ARM10和ARM11。在哈佛架构,两个寄存器不需要有共同的特征。特别是,字宽、定时、实现技术和内存地址都可以不同。在一些系统中,指令可以存储在只读存储器(ROM)中,而数据存储器一般需要读写存储器(RAM等)。在一些系统中,指令存储器比数据存储器多,因此指令地址比数据地址更宽。纯冯诺依曼架构下的CPU可以读取指令或读/写内存数据,它们都不能使指令和数据同时使用同一个的总线系统。使用哈佛结构的计算机中CPU,即使没有缓存的情况下也可以在读取指令的同时进行数据访问。由于指令和数据访问不使用同一个内存沟道,因此哈佛结构的计算机可以在相同的电路复杂度下有更好的表现。同时,哈佛架构机拥有不同的代码和数据的地址空间:指令的零地址和数据的零地址是不同的。指令的零地址可能是二十四位的值,而数据的零地址可能是一个八位字节,而非二十四位值的一部分。改进的哈佛架构机更像哈佛架构机,但它放松了指令和数据之间严格分离的这一特征,仍然允许CPU同时访问两个(或更多)内存总线。最常见的修改包括由公共地址空间支持的单独指令和数据高速缓存。当它作为一个纯粹的哈佛机时,CPU通过高速缓存来执行指令。当访问外部存储器时,它的作用就像一个冯·诺依曼机(代码可以像数据一样移动,像是一个功能强大的技能)。这一改良在现代处理器是普遍存在的,例如ARM体系结构、Power Architecture和x86处理器。它有时被称为哈佛架构,忽略了它实际上被“修改”的事实。另一种修改提供了指令存储器(例如ROM或闪存)与CPU之间的通路,以允许来自指令存储器的字被视为只读数据。该技术用于某些微控制器,包括Atmel的AVR。这允许访问诸如文本字符串或函数表之类的常量数据,而无需首先将其复制到数据存储器中,从而为读/写变量保留稀缺(且耗电的)数据存储器。特殊的机器语言指令提供了从指令存储器中读取数据的功能。(这是不同于指令本身嵌入常数的数据,虽然对于单个常量来说,两种机制可以相互替代。)近年来,CPU的速度已经提速了许多次以同步主存储器的访问速度。要注意减少内存访问次数的数量以保持性能。例如,每一个指令在CPU运行需要访问内存,增加计算机CPU没有任何速度提升的问题叫做内存限制。可能使内存非常快,但由于内存成本,电源和信号路由的原因这类内存数目很少。解决的办法是提供少量的快速存储器称为CPU缓存以存放最近访问过的数据。CPU提取缓存中的数据速度要比缓存提取主要寄存器数据的速度更快。现代高性能CPU芯片在设计上包含了哈佛和冯诺依曼结构的特点。特别是,“拆分缓存”这种改进型的哈佛架构版本是很常见的。 CPU的缓存分为指令缓存和数据缓存。CPU访问缓存时使用哈佛体系结构。然而当高速缓存未命中时,数据从主存储器中检索,却并不分为独立的指令和数据部分,虽然它有独立的内存控制器用于访问RAM,ROM和(NOR)闪存。 因此,在一些情况下可以看到冯诺依曼架构,比如当数据和代码通过相同的内存控制器时,这种硬件通过哈佛架构在缓存访问或至少主内存访问方面提高了执行效率。 此外,在写非缓存区之后,CPU经常拥有写缓存使CPU可以继续执行。当指令被CPU当作数据写入,且软件必须确保在试图执行这些刚写入的指令之前,高速缓存(指令和数据)和写缓存是同步的,这时冯诺依曼结构的内存特点就出现了。纯粹的哈佛架构同时访问多个存储系统的主要优点是由哈佛处理器利用现代CPU缓存系统。相对纯的哈佛架构机主要用于在应用中的取舍,就像忽略缓存的成本和节省功率,大于编程在不同的代码和数据的地址空间的不利。即使在这种情况下,它是为了访问程序存储器只读表的数据使用特殊指令或重新编程;这些处理器是改进的哈佛架构的处理器。

相关

  • 地中海饮食地中海饮食是很受现代营养学推荐的一种饮食模式,源自于1940-1950年代环地中海地区及国家(希腊、意大利南部及西班牙)的传统饮食型态。其以大量橄榄油、豆科植物、天然谷物、
  • 东部马脑炎病毒东部马脑炎病毒(英文:Eastern Equine Encephalitis,简称:EEE)为一种马因病毒而感染的疾病。常见于美洲及加勒比海一带。最早在1831年于美国马萨诸塞州发现。因为病毒较常感染美国
  • 溶酶体溶酶体(英语:lysosome),又称溶体、溶小体,存在于细胞(多存在于动物细胞中,植物细胞内不常见)中,属于细胞的内膜系统,由高尔基氏复合体产生,是单层膜的囊状细胞器,内部含有数十种从高尔基
  • 磷脂磷脂(phospholipid)也称磷脂类、磷脂质,是含有磷酸的脂类,属于复合脂。磷脂是组成生物膜的主要成分,分为甘油磷脂与鞘磷脂两大类,分别由甘油和鞘氨醇构成。磷脂为两性分子,一端为
  • 性向认同性向认同(英语:Sexual identity),又译为性取向认同,是指对于自我性吸引行为或情感归属性别对象的身份认同。 性向认同、性取向与性行为是密切相关,但它们也是有区别的。性向认同指
  • 钻石纳米晶体聚合钻石纳米棒(英语:Aggregated diamond nanorods,又称钻石纳米棒聚合体,简称ADNR),是一种纳米级晶型钻石,又称纳米钻石(nanodiamond)或超钻石(hyperdiamond)。聚合钻石纳米棒是于2003
  • 绞肉(或称碎肉、肉末、肉酱,潮汕话为肉糙,古代称醢)是用刀子或绞肉机切碎的肉,可以用任何肉类制成,是一种加工食品。绞肉通常是用较零碎、便宜的肉来制成,并可能加入食品添加物。绞
  • 约纳特阿达·约纳特(希伯来语:.mw-parser-output .script-hebrew,.mw-parser-output .script-Hebr{font-size:1.15em;font-family:"Ezra SIL","Ezra SIL SR","Keter Aram Tsova","Ta
  • 头夹肌头夹肌(Splenius capitis muscle)是脖子的肌肉。头夹肌(Splenius capitis muscle)起始于项韧带的下半部、第七段颈椎的棘突和上面三段或四段胸椎的棘突。肌肉纤维向上和横向,在胸
  • 继室继室,或称填房、后妻、继配、续弦或续弦,是指男子在元配妻子去世后再娶的正室,东亚传统制度中,继室虽然与元配同为正室,礼制上均等,但宗法上地位仍然不及元配。为了区别,皇帝的继室