(农业电气化与自动化专业论文)基于fpga的异核微处理器系统研究.pdf_第1页
(农业电气化与自动化专业论文)基于fpga的异核微处理器系统研究.pdf_第2页
(农业电气化与自动化专业论文)基于fpga的异核微处理器系统研究.pdf_第3页
(农业电气化与自动化专业论文)基于fpga的异核微处理器系统研究.pdf_第4页
(农业电气化与自动化专业论文)基于fpga的异核微处理器系统研究.pdf_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

江苏大学硕士学位论文 摘要 双核处理器是指在一个芯片上集成两个运算核心,从而提高计算 能力。“双核”的概念最早是由i b m 、肿、s u n 等支持s c 架构的高 端服务器厂商提出的,主要用在服务器上。双核技术的引入是提高处 理器性能的行之有效的方法。由于生产技术的限制,传统通过提升工 作频率来提升处理器性能的做法目前面临严重的阻碍,高频c p u 的 耗电量和发热量越来越大,已经给整机散热带来十分严峻的考验。双 核技术可以很好的避免这一点。通过增加一个内核,进行时序分配, 实现协调地处理任务的要求。 论文提出了基于f p g a 的异核系统的构建思想,即基于s o p c 设 计方法改进设计了一款与标准8 0 5 1 兼容的8 位m c ui p 核,用来处 理外围信号。并且同时设计了基于a 1 t e r a 公司n i o s i i 的处理器核,用 来管理内部数据。将两个不同的处理器核下载到a l t e r a 公司的f p g a 开发板中,从而完成了一个基于f p g a 的异核系统,实现智能家居监 控系统的设计。采用q u a r c u s i i 、s y i l p l i 矽p r o 、m o d e l s i m 等各种e d a 软件工具对整个微控制器内核进行了较完整的仿真验证,最后将整个 系统的配置文件下载到硬件环境f p g a 开发板中。 验证结果表明:所设计的异核处理器系统很好地工作在f p g a 中,实现了设计的要求。该设计可以作为可移植的i p 核,组成片上 系统,用于嵌入式系统领域,具有实际意义,同时也为今后进行基于 i p 核的s o p c 设计和验证提供了思路。 关键词:f p g a ;s o p c ;i p ;n i o s i i ;8 0 51 m c u ;异核 江苏大学硕士学位论文 a b s t r a c t t 1 w o - c o r ep r 6 c e s s o rm e a n st oi n t e g r a t e 佃| oo p e r a t ec o r e si nac h i pt o e i l h a l l c em ec o m p u t e ra b i l i 吼t h ec o n c e p to f 栅。一c o r ei sf i r s tm i s e di n i b m ,h p 锄ds u nw h i c hs u s t a i nt h em s cc o n f i g u r a t i o no ft o p s e v e r m a n u f a c t l l r e t h a ti sm o s t l yu s e di ns e v e r s t bi m p o r tt h et e c l u l i q u eo f 铆o - c o r ei sa ne m c i e n c yw a yt oi m p r o v et 1 1 ea b i l i 够o fp r o c e s s o r b e c a u s e o ft l l el i m i t e do fm a n u f a c t u r e ,i ti sd i 衔c u l tf o r 仃a d i t i o n a lw a yt ob o o s t t h ea b i l 埘o fp r o c e s s o rn o w ,a n da sh i 曲e rp o w e r 孤dh e a to fc p u , r i g o r o u st n b u l a t i o nf o rt h ew h o l ec o n l p u t e rt od i s p e l h e a t a n dt h e t e c h n o l o g yo ft w o - c o r ec a na v o i dt h a tt 1 1 r o u g ha d d i n ga n o t h e rc o r et o a s s i g nt h et i m es c h e d u l i n gt oa c h i e v et h ed e m a n di nl i n e t h ep a p e rp r o p o s e dan e wi d e ao fd i 虢r - c o r eb a s e do nf p g a r 】b a m e l i o r a t et h e8b i t sm u ci pc o r ew h i c hi sc o m p a t i b l ew i t hs t a n d a r d 8 0 5l p r o c e s s o rt od e a lw i t ht h eo u t w a r ds i g i l a l s ,t h a ti sb a s e d0 nt h e s o p cd e s i g nt e c h n o l o g ya tt h es a m et i m e ,d e s i g nn i o s i ip r o c e s s o ro f a l t e r at om a n a g et h ei n t e r i o rs i g n a ld a t a t h e nd o w n l o a dt h e s et w o d i 丘i e r e n tc o r e si naf p g ao fa l t e r at of i n i s ht h ew h o l ed i 筇昌r - c o r es y s t e m d e s i g nt oc a r 秽o u tt h ei n t e l l i g e n th o m em o n i t o rs y s t e m u s e 也ev a 矗o u s e d as o r w a r et o o l ss u c ha ss y n p l i f yp r o ,m o d e l s i ma n dq u a r t l l s i it o s i n m l a t ea n d 如n c t i o n t e s tt h ew h o l em i c r o c o n 仃o n e rc o l i ea n dt h e nt 0 d o w n l o a dt h ew h o l ec o n f i g u r ef i l et ot h ef p g a b o 砌a tl a s t t h et e s tr e s u l ts h o w :t h ed i 插* c o r ep r o c e s s o rw o r bw e l l i nf p g a a n di m p l e m e n tt h er e q u e s to fd e s i 印a n da l s ot b j sd i 鼠r - c o r ep r o c e s s o r s y s t e mc a nb ea s ar 肌s e di pc o r eu s e di no n c l l i ps y s t e m ,a n di s m e a n i n g m l i nt h e 丘e l do f e n 曲e d d e ds y s t e m 印p l i c a t i o n a tt l l es 锄et i m e , t h es y s t e mo ft h ep 印e rd e s i 印e db 血gf o 刑砌an e ww a yi ns o p c d e s i g n 砒l dt e s tw h i c ha r eb 弱e do ni pc o r e si nt h e 如t l l 坞 k e y w o r d s :f p g a , s o p c ,i p ,n i o s i i ,8 0 51m c u ,d i 行e r c o 坞 i l 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保 留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借 阅。本人授权江苏大学可以将本学位论文的全部内容或部分内容编入有关数据库 进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口,在 年解密后适用本授权书。 本学位论文属于 不保密囹 籼橼肼 指删雠:女再 2 0 0 8 年月,1 日 独创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容以外,本 论文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本 文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 2 0 0 8 年0 6 月 江苏大学硕士学位论文 1 1 多核c p u 的研究背景 第一章绪论 目前c p u 单纯依靠提升主频已经很难大幅度提升c p u 的性能,从而减缓了消 费者对高频c p u 的需要。其次,当c p u 主频达到2 g h z 以上时,处理器功耗也达 到了近l o o w ,这已经是目前风冷散热技术的极限。很明显,单核c p u 在主频提 升乏力的情况下已经显得力不从心。要想增加处理速度,一个途径是增加单位面 积的处理能力,另一个则是走并行道路,增加处理器数量。在国防、气象等领域, 并行处理的概念很自然地被提出,相关计算性能要求高的行业,多核c p u 也应运 而生【1 1 。 所谓多核c p u 技术是在同一个硅晶片( d i e ) 上集成多个独立核心,在实际 工作中它们协同工作,以达到性能倍增的目的。最早提出多核心c p u 想法的人或 公司现在已经无从考究,但对此表现最积极的当属s u n 、i b m 和i n t e l 。它们联 手开发多线程微处理器和多核心微处理器,并且已取得了一定的成果。 多核c p u 在设计上更为灵活,已不局限于双核的对称设计;缓存单元与任务 分配更合理,核心间通信更快捷。这些特性决定了它在芯片设计方面,将走上对 称和非对称两大路线【2 1 。 a 对称多核 i n t e l 将对称多核称为“m u l t i c o r e ,也就是:对称多核c p u 可以是由完 全独立的处理单元连接起来,也可以共享一个大缓存。在连接方式上也有不同, 可以通过总线连接,总线为他们通信提供协议支持;也可以各单元直接相连,这 就要求在每个单元内部有负责通信的电路。这些区别完全由实际情况和用户需要 决定。 b 非对称多核 “底层功能由硬件实现来提高运行速度和可靠性”是非对称多核c p u 的原 理,i n t e l 将非对称多核称为“m a n yc o r e 。非对称多核c p u 是将不同功能的 专用内核整合到一个芯片上,等待处理的任务先由“任务分析与指派系统 分析 其构成,然后把任务分解发送到各内核中。各个内核只负责自己的工作,将运算 结果交还“结果收集与汇总。这样将大大提升运算效率,分解单个内核的处理 江苏大学硕士学位论文 压力。它们有自己独立的e x e c u t i o n ( 运算) 核心,c a c h e ( 缓存) ,既可以共 享也可以独立,一些简单的核心不需要缓存也可运行。由于辅助核心结构相当简 单、功耗低,几乎可以按需任意扩展。因为各应用专用核心体积较小,加上制造 工艺的进步,在单片中集成很多核心不是难事。 任务分析与指派 c 。他l lc 。r c 2 l c a c h ec a c h c 量k c c u t i o ne x e c u t i o n c o r cc o 佗 m a t h g r 印h i c ll 结果收集与汇总 图1 1 对称多核的结构图1 2 谁对称多核的结构 f i g 1 1s 仇l c t l l r eo f m u l t i - c o r ef i g 1 2s 饥l c t i 鹏o f m 锄yc 0 由于多方面的限制,将主频的提升作为芯片性能提高的主要标志的时代已经 终结。为了有效地利用集成度的提高带来的海量晶体管资源,提高处理芯片的性 能,进一步开发芯片上并行性成为主要手段。片上多处理器( 尤其是片上大量的 处理器) 成为学术界和工业界的选择【3 】。采用多核处理器,就可以在处理负荷大 的时候,让所有的处理器内核都全力以赴地工作。在处理负荷小的时候,就可以 让一个或几个内核进入低功耗状态进行休息,实际上也降低了功耗和散热。多核 处理器的另一个潜在优势是可靠性。在多核处理器中,利用虚拟化技术,可以让 各个内核独立运行,如一个内核运行w i n d o w s ,另一个内核运行l i n u x ,也可以 两个内核都运行同样的操作系统。万一某个内核出现故障,另一个内核就可以接 替故障内核的工作,不至于使系统崩溃或脱机。随着制造工艺的进步,处理器核 心所占的硅片面积占整个处理器硅片面积的比例在下降,这也使得制造双核处理 器在成本上变得更加划掣4 j 在消费类电子产品中,高清电视节目的编解码需要强大的处理能力,因此录 制高清节目的便携式摄像机、p v r 录像机需要支持多种高清格式和编解码标准; 在数字家庭中,无线、有线的接入网关将有可能与存储设备、媒体中心整合在一 起,需要具有高带宽和密集处理数据流的能力;在3 g 和4 g 推出后,将诱使热 衷尝鲜的年轻人体验手机电视、视频聊天、无线上网,所有这些应用是多核处理 2 江苏大学硕士学位论文 器的潜在市场。也许在将来搞产品评测的时候,还要加上一条,看看处理器有多 少个内核,而不仅仅是看时钟频率、处理能力和带宽。 目前,芯片集成度继续延续摩尔定律每1 8 个月左右翻一番,预计到2 0 1 0 年前后单个芯片能够集成数十亿个晶体管,而且这一趋势将持续相当长的一段时 间。如何充分发挥利用芯片上大量的晶体管资源设计高性能的微处理器是当前产 业界和学术界普遍关注的问题。在单芯片上集成多个处理器核构建多核处理器来 开发更高级别的芯片内并行性是处理器重要的发展趋势之一【3 】。 1 2 选题的研究意义 多核处理器按照集成方式的不同可以分为同构多核处理器核和异构多核处 理器。同构多核处理器在一个芯片内集成了多个同构的处理器核,每个处理器核 所面向的工作负载完全相同,因此其设计实现相对简单。异构多核处理器则在一 个芯片内集成了多个异构的处理器核,不同结构的处理器核负责处理不同类型的 操作。这样,异构多核处理器对于特定应用领域比同构多核处理器能发挥更高的 性能。因此,异构多核处理器是当前产业界和学术界的研究热点。 本文提出了基于s o p c ( s y s t e mo nap r o g r a 姗a b l ec h i p ) 设计方法的异核系 统的构建思想,即在同一块f p g a 中集成两个不同类型的处理器核,通过时序协 调和分配,共同完成任务的目的。“任务分析与指派系统 设计合理、效率高, 既可保证系统的稳定运行。同时“结果收集与汇总 将保证多核处理器运算结果 同普通c p u 结果一样能被软件接受,增强了兼容性。这正是片上系统s o p c 带给 我们的启示。 s o p c 技术是一种软硬件协同设计、具有知识产权的内核( i pc o r e ) 复用核超 深亚微米技术为支撑【5 】,采用这种技术不仅能克服通讯接口复杂问题,还能实现 片上系统集成【6 】。s o p c 技术的目标就是试图将尽可能大而完整的电子系统,包括 数字逻辑、嵌入式处理器等在f p g a 中实现,使得所设计的电路系统在其规模、 可靠性、体积、功耗、功能、性能指标、上市时间、开发成本、产品维护及其硬 件升级等多方面实现最优化。 江苏大学硕士学位论文 1 3 论文工作简介 本文在分析了i n t e l s 一8 0 5 1 体系结构和指令集的基础上,采用自顶向下 的数字系统设计流程,并借鉴其他研究者的成功经验,改进设计了8 位微处理器 i p 核;以a 1 t e r a 的e p 2 c 3 5 f 为f p g a 的硬件载体,在q u a r t u s i l 6 0 软件中,应 用s o p cb u i l d e r 6 0 开发环境,设计了基于a v a l o n 交换总线的n i o s i i 处理器, 结合n i o s i ii d e 应用程序开发环境,实现家居网络监控的功能。 本文研究的主要内容: 1 通过分析、研究i n t e lm c s 一8 0 5 1 的硬件结构及所有指令系统结构,在深 入理解m c u 的工作原理和设计方法的基础上,完成了微控制器核的总体结构和其 各个层次模块功能的划分与定义。以美国0 r e g a n o 公司设计的8 0 5 1 i p 核为蓝本, 对i p 核进行了改进设计。主要是对a l u ( a 1 9 0 r i t h ml o g i cu n i t ) 模块和串口通 信模块进行了改进设计,提高了信号采集的速度和稳定性。 2 基于a 1 t e r a 公司的q u a r t u s i l 6 0 软件、s o p cb u 订d e r 6 o 开发工具和 n i o s i ii d e 应用开发环境设计n i o s i i 处理器,结合a l t e r a 公司的宏功能模块 l p m 组成的外围,从而实现网络监控的功能。 3 利用e d a 工具完成m c ui p 核的改进设计、综合及仿真验证。模块的编程、 调试在a l t e r a 公司的q u a r t u s i l 6 0 开发环境中完成;逻辑综合使用s y n p l i c i t y 公司的s y n p l if yp r o8 1 综合工具;仿真验证使用m e n t o r 的子公司m o d e lt e c h 的m o d e l s i ms e6 1 d 仿真工具。 最后将m c ui p 核与n i o s i i 处理器核放在同一个工程中设计智能家居监控系 统,编译下载到d e 2 开发板中进行物理验证。 4 江苏大学硕士学位论文 第二章s o p c 和ip 核设计的相关知识 2 1s o c 设计思想 2 0 世纪下半叶以来,微电子技术迅猛发展,集成电路设计和工艺水平有了 很大的提高,单片集成度已达到了上亿个晶体管,从而使得将原先由许多i c 组 成的电子系统集成在一个单片硅片上成为可能,构成所谓的片上系统( s y s t 锄0 n c 1 1 i p ,s o c ) ,或系统芯片。与普通的集成电路相比,系统芯片不再是一种功能 单一的单元电路,而是将信号采集、处理和输入输出等完整的系统功能集成在一 起成为一个专门功能的电子系统芯片。而其设计思想区别于普通i c 。s o c 把系 统的处理机制、模型算法、芯片结构、各种层次电路及器件的设计紧密结合,在 一片或数片上完成整个复杂系统的功能【7 1 。 2 1 1s o c 和s o p c 技术 s o c 技术的出现是电子系统设计领域的一场革命。当今电子系统的设计已 不再是利用各种通用i c 进行p c b 板级的设计和调试,而是转向以大规模f p g a 或a s i c 为物理载体的系统:签片的设计,前者称为s o p c ,后者为s o c 。另一方 面,由于集成电路工艺的成熟和e d a 工具的迅速发展,使得电子系统的设计者 并不需要过多地关注半导体集成工艺,完全可以利用现有的成熟工艺,在e d a 工具的帮助下完成整个系统从行为算法级( 系统级) 到物理结构级的全部设计, 并最终在f p g a 上实现,或委托i c 制造商进行a s i c 生产。 s 0 p c 技术实现方式f 8 1 1 ) 基于f p g a 嵌入i p ( h n e l l e c t u a lp r o p e f t y ) 硬核的s o p c 系统。目前最常 用的嵌入式系统大多数采用了含有删的3 2 位知识产权处理器核的器件。 灿t e r a 公司e x c a l i b l l r 系列的f p g a 中就植入了删9 2 2 t 嵌入式系统处理器; ) ( i l i l 的r t c x i ip r 0 系列中则植入了i b mp o w e r p c 4 0 5 处理器。这样就能使得 f p g a 灵活的硬件设计和硬件实现与处理器强大的软件功能结合,高效地实现 s o p c 系统。 2 ) 基于f p g a 嵌入i p 软核的s o p c 系统。在第一种实现方案中,由于硬核 是预先植入的,其结构不能改变,功能也相对固定,无法裁减硬件资源,而且此 s 江苏大学硕士学位论文 类硬核多来自第三方公司,其知识产权费用导致成本的增加。如果利用软核嵌入 式系统处理器就能有效克服这些不利因数。最具有代表性的嵌入式软核处理器是 a l t e m 公司的n i o s i i 处理器。 3 ) 基于h a r d c 0 p y 技术的s o p c 系统。h a r d c o p y 就是利用原有的f p g a 开 发工具,将成功实现于f p g a 器件上的s o p c 系统通过特定的技术直接向a s i c 转化,从而克服传统a s i c 设计中普遍存在的问题。 从s o p c 实现方式上不难看出,m 核在s o p c 系统设计中占有极其重要的 地位,口核设计及i p 核的复用成为s o p c 技术发展的关键所在。半导体业的疋 定义为用于a s i c 、a s s p 和p l d 等当中预先设计好的电路模块。在s o p c 设计 中,每一个组件都是一个i p 核。p 核模块有行为、结构和物理三级不同程度的 设计,对应描述功能行为的不同分为三类,即完成行为描述的软核( s o f li pc o r c ) 、 完成结构描述的固核( f i 衄i pc o r e ) 和基于物理描述并经过工艺验证的硬核 ( h a r di pc o r e ) 。 2 1 2t o p - d o w n 的设计思想1 9 l 传统的专用集成电路( a s i c ) 设计采用的从底向上( d o w n t 0 p ) 的方法较 多,其基本思路是从系统需要出发,根据已存在的硬件基本单元划分设计的最底 层的单元模块。硬件基本单元是由e d a 库提供,或外购及其他项目已开发出的 单元。d o w n t o p 设计是基于简单i c 设计提出的方法,已不能满足复杂a s i c 特 别是s o c 芯片的设计要求。 t o p d o 、n 方法整体考虑了s o c 芯片软、硬件系统设计的要求。把系统需要、 处理机制、芯片体系结构、各层次电路及器件、算法模型、软件结构、协同验证 等紧密结合起来,从而单个或极少几个芯片完成整个系统的功划1 0 1 ,其设计流 程如图2 1 所示,分为以下几个主要步骤: 1 ) 系统总体方案设计:芯片系统功能、指标定义、需求分析、产片市场定 位、软硬件划分、指标分解等整体方案论证; 2 ) 软、硬件方案设计:确定软、硬件体系结构,模块功能的详细描述及技 术指标要求,时序及接口定义等工作; 3 ) 模块设计开发:完成硬件模块的开发,行为及时序仿真测试,底层硬件 驱动程序编写,算法设计及仿真,协议和应用软件的设计与开发。对于复杂的功 6 江苏大学硕士学位论文 能模块,可进一步划分为子模块。在算法仿真时,根据系统指标的要求划分出信 号处理硬件加速模块: 4 ) 软、硬件协同仿真测试:主要测试系统方案和软、硬件模块设计功能的 正确性; 5 ) 样机平台的测试:主要是自建或专用的验证平台,测试整个设计的功能、 性能指标是否达到要求。 系统总体方案设计 上上 硬件方案、模块划分软件分层结构、模块划分 j 上上上上上上 l 模块l模块2模块n硬件驱动程序算法设计、仿真协议、应用软件 lil 上 软、硬件协同仿真验证 + 基于功能样机平台的验证 图2 1 ,r 0 p - d o w n 设计流程 f i g2 1p r o c e d u r eo f l 0 p d o w nd e s i 驴 t o p d o w n 设计过程体现了层次化及目标化的系统设计思想。在s o c 芯片设 计时具有如下的优点【1 1 】: 1 ) 整体考虑了s o c 芯片中软核及硬件设计。s o c 芯片通常内嵌了m c u 和 d s p 处理器,软件包含了硬件驱动、算法、协议、应用程序、实时操作系统等。 2 ) 它克服了大规模电子系统高复杂度所带来的问题,系统可以层次地划分 为易于处理的子系统,再层次地求精: 3 ) 有利于知识产权( mc o r e s ) 的采用和可重用m 模块成果的产生; 4 ) 各子系统可以给设计组中的成员同时设计,也加快了设计速度; 5 ) 设计错误可以在早期发现,极大地减少了设计的迭代次数; 6 ) 逻辑综合优化之前的设计工作和具体采用什么工艺生产芯片是无关的, 因而设计的可移植性好,当要采用新的工艺时,可以直接从综合开始: 7 ) 自顶向下的设计方法增加了一次性设计成功的可能性。 7 江苏大学硕士学位论文 2 2ip 核的设计与重用 i p 是i n t e l l e c t u a lp r o p e r t y 的简称,即知识产权。在集成电路设计领域,口特 指可以通过知识产权贸易在各设计公司间流通的完成特定功能的电路模块【1 2 】。p 重用是指在设计新产品时采用已有的各种p 功能模块,即使进行修改也是非常 有限的,这样可以减少设计人力和风险,缩短设计周期,确保产品质量。 m 核可以分为软核( s o r 口c o r e ) 、硬核( h a r di pc o r e ) 和固核( f i 肌i pc o r e ) 。 i p 软核通常以h d l 文本的形式提交给用户,它经过l 玎l 级设计优化和功能 验证,但其中不含有任何具体的物理信息。据此,用户可以综合出正确的门电路 级设计网表,并可以进行后续的结构设计,具有很大的灵活性。借助于e d a 综 合工具可以很容易地与其他外部逻辑电路合成一体,根据各种不同半导体工艺, 设计成具有不同性能的器件。软口核也称为虚拟组件( 竹i l a lc o m p o n e n t ,v c ) 。 i p 硬核是基于半导体工艺的物理设计,已有固定的拓扑布局和具体工艺, 并已通过工艺验证,具有可保密的性能。其提供给用户的形式是电路物理结构掩 模版图和全套工艺文件。 i p 固核的设计程度则是介于软核和硬核之间,除了完成软核所有的设计外, 还完成了门级电路综合和时序仿真等设计环节。一般以门级电路网表的形式提供 给用户。 显而易见,在具体实现手段和工艺技术尚未确定的逻辑设计阶段,软核具有 最大的灵活性,它可以很容易地借助e d a 综合工具与其它外部逻辑结合成为一 体。当然,由于实现技术的不确定性,有可能要做一些改动以适应相应的工艺。 相比之下,固核和硬核与其它外部逻辑结合的灵活性要差很多,特别是电路实现 工艺技术改变时更是如此。而近年来电路实现工艺的发展是非常迅速的,为了逻 辑电路的设计成果的积累,和更快更好地设计更大规模的电路,发展软核设计和 推广软核重用技术是非常必要的f 1 3 1 。 2 3ip 核的设计语言 2 3 1 硬件描述语言的简介 硬件描述语言h d l ( h 矧1 w a 啪d 骼嘶p t i o nl 釉g 唿g e ) 是一种形式化方法来描 8 江苏大学硕士学位论文 述数字电路和系统的语言。数字电路系统的设计者利用这种语言可以从上层到下 层( 从抽象到具体) ,逐层描述自己的设计思想,用一系列分层的模块来表示极 其复杂的数字系统。然后利用电子设计自动化( e d a ) 工具逐层进行仿真验证, 再把其中需要变为具体物理电路的模块组合经由自动综合工具转化到门级电路 网表。接下去再用专用集成电路( a s i c ) 或现场可编程门阵列( f p g a ) 自动布 局布线工具把网表文件转化成具体的电路布线结构的实现。在制成物理器件前, 还可以用h d l 的门级模型( 原语元件或u d p ) 来代替基本元件。因其逻辑功能 和延时特性与真实的物理元件完全一致,所以在仿真工具的支持下能验证复杂数 字系统的物理结构与真实的物理元件完全一致,所以在仿真工具的支持下能验证 复杂数字系统的物理结构的正确性,使其投片的成功率达到1 0 0 。目前这种称 之为高层次设计( h i g l l l e v e l - d e s i 印) 的方法已经被广泛采用。据统计,目前在 美国硅谷约有9 0 以上的a s i c 和f p g a 已采用硬件描述语言的方法进行设计。 硬件描述语言的发展至今已有2 0 多年的历史,并成功的应用于设计的各个 阶段:建模、仿真、验证和综合等。到2 0 世纪8 0 年代,已出现了上百种硬件描 述语言,它们对设计自动化曾起到了极大的促进和推动作用。但是这些语言一般 各自面向特定的设计领域与层次,而且众多的语言使用无所适从。因此急需一种 面向设计的多领域多层次并得到普遍认同的标准硬件描述语言。进入2 0 世纪8 0 年代后期,硬件描述语言向着标准化的方向发展。最终,v h d l 和v 嘶l o gh d l 语言适应了这种趋向的发展,先后成为i e e e 标准【1 3 ,1 4 1 。 2 3 2v h d l 与v e r n o g h d l 的比较 d l 和v 舐1 0 9h d l 都适用于逻辑设计的硬件描述语言,并且都已成为 i e e e 标准。v h d l 的英文全称是s i ch a r d w a r ed 髓嘶p t i o nl 锄g i l a g e ,而 v h s i c 的英文全称是v c :r yh i 曲s p e c di n t e 刚e dc i r c u i t ,意为超高速集成电路, 故d l 其准确的中文译名为超高速集成电路描述语言。v h d l 是在1 9 8 7 年成 为m e e 标准,v 踟l o gh d l 则是在1 9 9 5 年才正式成为i e e e 标准。之所以d l 比v 舐l o gh d l 早成为i e e e 标准,这是因为d l 是美国军方组织开发的,而 v 舐1 0 9h d l 则是一个普通的民间公司的私有财产转化来的。 d l 和v 撕l o gh d l 作为硬件描述语言,其共同的特点在于:能形式化地 抽象表示电路的行为和结构;支持逻辑设计中层次与范围的描述;可借用高级语 9 江苏大学硕士学位论文 言的精巧结构来简化电路行为的描述;具有电路仿真与验证机制以保证设计的正 确性;支持电路描述由高层到底层的综合转化;硬件描述与实现的工艺无关;便 于理解和设计重用。 但是v h d l 和v c 棚o gh d l 也各有其自己的特点。与 d l 相比,l o g h d l 的最大优点:它是一种非常容易掌握的硬件描述语言。目前版本的v 舐l o g h d l 和d l 在行为级的抽象建模的覆盖范围方面也有所不同。一般认为 v e :r i l o gh d l 在系统抽象方面比d l 略差一点,而在门级开关电路描述方面比 d l 强的多。 2 3 3v h d l 应用情况及适用的设计 近lo 年来,e d a 界一直对在数字逻辑设计中究竟采用哪一种硬件描述语言 而争论不休,目前的情况是两者各有千秋。在美国,高层次的数字系统设计领域 中,应用v 嘶l o g 和d l 的比率是8 0 和2 0 ;日本和台湾与美国的情况相 同;而在欧洲d l 发展得比较好1 3 1 。 有专家认为,在新的世纪中,d l 和、饼i l o g 语言将承担起几乎全部的数 字系统设计任务【15 1 。由于设计m c u 8 0 51 主要使用d l ,故对v h d l 的特点 作简要的介绍。应用d l 进行工程设计的优点如下f 1 6 】: 1 ) 与其它的硬件描述语言相比,d l 具有更强的行为描述能力,从而决 定了它成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体 的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。 2 ) v h d l 语句的行为描述能力和程序结构决定了它具有支持大规模设计的 分解和已有设计的再利用功能。v h d l 中设计实体的概念、程序包的概念、设计 库的概念为设计的分解和并行工作提供了有力的支持。 3 ) 对于d l 完成的一个确定的设计,可以利用e d a 工具进行逻辑综合 和优化,并自动地把d l 描述设计转化成门级网表。这种方式突破了门级设 计的瓶颈,极大地减少了电路设计的时间和可能发生的错误,降低了开发成本。 应用e d a 工具的逻辑优化功能,可以自动地把一个综合后的设计变成一个更小、 更高速的电路系统。 4 ) 可以进行与工艺无关编程。v l l 语言设计系统硬件时,没有嵌入式描 述与工艺相关的信息,不会因为工艺变化而使描述过时,与工艺技术无关的参数 l o 江苏大学硕士学位论文 可通过d l 提供的类属加以描述。 5 ) 方便a s i c 移植。当产品达到相当数量时,采用d l 进行的设计可以 很容易转成专用集成电路( a s i c ) 来实现,甚至用于p l d 的源代码可以直接用 于a s i c 。 由此看来,对于大型的系统级设计,则d l 更为适合。 江苏大学硕士学位论文 第三章m c u8 0 5 1 lp 核的改进设计 3 1m c u8 0 5 1ip 核 计算机的核心部件c p u 通常包含运算器和控制器两大部分。组成c p u 的基本 部件有运算部件、寄存器组、微命令产生部件和时序系统等。这些部件通过c p u 内部的总线连接起来,实现它们之间的信息交换【1 刀。 现在有许多免费的8 0 5 l i p 核可以利用,这些核都通过硬件描述语言来实现, 并且基本上都可综合,也就是直接拿来就能用,需要的是根据自身的具体要求做 一些修改即可。美国o r e g a n o 公司设计的i pc o r e 【1 8 1 9 1 ,它使用v h d l 语言描述, 采用了全局同步设计的思想,具有良好的层次逻辑架构,可方便地进行功能模块 的扩展及修改,而且它和i n t e l 公司的m c s 5 l 系列单片机指令系统兼容。本论文 在此基础上根据整个系统外围数据采集的需要,对a l u ( a 1 9 0 r i th i l ll o g i cu n i t ) 模块和串口通信模块进行了改进设计,提高了信号采集的速度和稳定性。 本章将介绍一个完整的m c u8 0 5 1i p 的设计过程,包括各个模块的设计以及 内部连接。重点介绍了算法级层面上关键模块的优化设计,即在a l u 设计中,对 除法运算模块,采用了优化的移位相加算法,从而在实现层面上提高性能【2 0 ,2 2 1 。 3 1 1 改进后的m c ui p 核的特点 通过对传统的m c s 一5 l 系列结构、指令系统和指令时序方面分析并优化设计, 改进后的m c u8 0 5 1i p 核具有如下功能特点: 采用完全同步时序设计; 指令集和标准8 0 5 l 微控制器完全兼容; 指令执行时间为1 4 个时钟周期,执行性能提高了8 倍左右; 可选择定时器计数器、串行接口单元的数量; 新增了特殊功能寄存器用于选择不同的定时器计数器、串行接口单元; 可选择是否使用乘法器( 乘法指令舢l ) ; 可选择是否使用除法器( 除法指令d i v ) ; 可选择是否使用十进制调整功能( 十进制调整指令d a ) ; i o 口不可复用; 1 2 江苏大学硕士学位论文 最多可扩展至6 4 k b y t e s 的r o m 和6 4 k b y t e s 的r a m 。 3 1 2 删i p 核顶层结构及层次划分 m c u8 0 5 li p 核顶层结构图如图3 1 所示,图中指示了m c 8 0 5 l c o r e 的顶层 结构以及与存储模块的连接关系,同时显示了顶层的输入输出i o 口,各i o 信号的描述如图所示。定时器计数器和串行接口单元对应于图中的 m c 8 0 5 1 一t 眦c t r 和m c 8 0 5 1 一s i u 模块,数量是可选择的,在图中用虚线表示。 硪 “l l t - j dl 楚 日哟5 鱼i a 矗“i h 彳 e - l 伴心”蹙 n 鬯a l l h d 一l - 埘_ d j ! n 埔r x do f a 脚l l 缸m l 竹- 睁m 嘲 呻 鼬u | ! l 王i 工lj f 儿 椭j l 棚i - i l 一l p o 9 , - i 毛一 t州j p :l it lp 2 - o p 3 jl 煳酏9 m - e 拭妇 一,一 j : 。 1r r 上j r j 工j工丁工 n 蝴1 - r a mm c 8 0 5 j mm c 8 。5 1 删 m c 8 0 s 1l o p 1 2 8 x 8 城( 峨t o 删嘲 ( | 0 6 4 k x 8 b 图3 1m c u8 0 5 lp c o r e 项层结构图 f i g3 1t o ps 仃u c t u r eo f m c u8 0 5 l 口c o 关键部分说明: c l k :由于该8 0 5 1i p 核采用了全局同步设计,因此只需要一个时钟输入就 可以为每个存储元素提供时钟沿控制。在设计中,并没有使用门控时钟。对于外 部中断输入,由于它们可能是由外部不同的时钟源控制,所以在进入中断端口后, 由8 0 5 1i p 核的全局时钟使用两级寄存器进行同步化。 并行i o 口:该8 0 5 1 i p 核提供了与i n t e l 8 0 5 l 相同的4 个8 位的i o 并行 口。但为了方便进行i c 集成,该i p 没有采用i 0 复用的方式,而是将每个端口 都是设计为单向的,这样的设计符合了f p g a 设计中慎用三态的原则。 1 3 江苏大学硕士学位论文 存储器接口:为了优化i p 的结构,该i p 模块的信号在与存储器接口连接时 没有使用寄存器输入输出,因而在综合时需要进行相关端口的时间约束。 此外,该i p 核还可以通过修改其参数来扩展多个定时计数器、串口通信、 外部中断等,以实现不同的应用需求。 表3 1 顶层信号名 t a b3 1s i 印a ln 锄eo f t o pl e v c l 携号名撼逑 c l l ( 襄统时钟,只阁别时镑上升沿 f e s e t 肆步复位所宵镪缆嚣 a 王lt oi 定时嚣秘。数嚣o 输入弓l 瓣 a l lt li 定时器饼4 羧貉1 输入弓l 脚 棚饮di 彩【l 数撅接牧辕入麓 i n oi 外嬲嘲颧0 输入弓i 脚 i n t li 外搿t | 獗l 输入引脚 p p o 绷缓入弓;嬲 p l _ i p l 门输,弓;嬲 p 2 _ i p 2i 输入弓 瓣 p 3 j p 3i 二l 竣入哆l 辫 a 啦d w l o戚输砧输i : 孝翔掩制l 嚣垮掰电平输出) a l l 议do 窜睇数辫输 i i 引脚 a n _ 口。 串日工作于模式o 辩教撅输潮弓l 脚 p o _ op o 羽辘融粤 辫 p l - o p l 翻辏隗弓;脚 p 2 _ o p 2 翻输觊弓l 辫 p 3 - o p 3 翻赣绺喀l 脚 当然,正确合理地划分子系统是所有数字系统设计成功的关键。子系统的划 分过程,就是把总体任务划分成若干分任务的过程。划分应遵循如下原则【2 3 】: 整个系统的全部功能应由子系统清楚并全面地表达; 各子系统的结构应保持完整; 减少各子系统间的相互依赖; 适量控制子系统的规模。 m c 8 0 5 1i pc o r e 的层次结构如图3 2 所示。核心由定时器计数器、a l u 、 串行接口和控制单元各模块组成。r o m 和i 础模块不包括于核心内,处于设计 的项层,方便于不同的应用设计及仿真。 本节从总体上分析了所设计m c ui p 核的整体框架结构,为微处理器核内部 的具体实现提供了明确的思路。 1 4 江苏大学硕士学位论文 m c ui p 核顶层模块 r a 一模块 m c u 核 r o m 模块 定时计数器a l u 格毫= 唤串行接口控 j 模块 i 多路选择器逻辑布尔操作模块加,减法模块乘法模块除法模块十进制调节模块控铜存储模块控制器f s mi 带进位加,减模块不带进位加厂减模块 图3 2m c u8 0 5 l c o 陀设计层次 f i g3 2d 懿i 弘l c v c l so f m c u8 0 5 1 口c o 他 3 1 3 骶ui p 核设计流程l 矧 8 0 5 l i p 核的子模块用v h d l 描述的,可分别仿真调试,再用一个总模块调用 各个分模块来实现整个核的预定功能。设计流程如图3 3 所示: 软件( v h d l ) 图3 38 0 5 1mc o r e 没计沉程 f i g3 3d e s i 鹊n o w o f 8 0 5 li p c o f e 具体过程描述如下: l 、根据设计需要定制i p 核的主要模块结构和指令系统; 2 、用行为级v h d l 描述整个i p 核,分别编辑硬件描述语言; 3 、在q u a r t u s i i 上编译、调试各个模块,仿真基本功能和时序; 4 、各个模块组合,在s y n p l i f yp r o 上综合总模块,得到综合后的网表文件 m c 8 0 5 1 一c o r e e d f 及综合报告; 5 、在k e i l 上编写测试用的单片机程序代码,并编译生成h e x 文件; 6 、在q u a r t u s i i 上编译综合系统级描述,波形时序仿真,将生成的木s o f 或木p o f 文件下载,进行硬件仿真调试。 1 5 江苏大学硕士学位论文 3 2m c u8 0 5 1ip 核各

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论