首页 基于SystemC的UART设计

基于SystemC的UART设计

举报
开通vip

基于SystemC的UART设计 !""# 年 无线电工程 第 $# 卷 第 $ 期 !"### 基于 !"#$%&’的 ()*+设计 王% 颖,王赛宇 (中国电子科技集团公司第 &’ 研究所,河北 石家庄 "&""()) 摘% 要% 随着集成电路设计规模的不断扩大,*+,设计的时代已经到来。*-./01,作为一种新兴的 *+, 设计语言,它本 质上是在 , 22的基础上添加的硬件扩展库和仿真核,这使得 *-./01,可以建模不同抽象级别的包括软件和硬件的复杂电子 系统。在 , 22环境中,它支持软件、硬件和接口描述。利用 *-./01,的...

基于SystemC的UART设计
!""# 年 无线电工程 第 $# 卷 第 $ 期 !"### 基于 !"#$%&’的 ()*+ 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 王% 颖,王赛宇 (中国电子科技集团公司第 &’ 研究所,河北 石家庄 "&""()) 摘% 要% 随着集成电路设计规模的不断扩大,*+,设计的时代已经到来。*-./01,作为一种新兴的 *+, 设计语言,它本 质上是在 , 22的基础上添加的硬件扩展库和仿真核,这使得 *-./01,可以建模不同抽象级别的包括软件和硬件的复杂电子 系统。在 , 22环境中,它支持软件、硬件和接口描述。利用 *-./01,的这些特性实现了对 3456 的建模,并用波形图验证了 仿真结果。 关键词% *-./01,;片上系统;通用异步收发器 中图分类号% 678)% % % 文献标识码% 4% % % 文章编号% )""$ 9 $)":(!""#)"$ 9 ""’# 9 "$ ()*+ ,%#-./ 01#%2 3/ !"#$%&’ ;47< =>?@,;47< *A>B-C (!"# &’$" %#&#’()" *+&$,$-$# ./ 01!0,2",3,’4"-’+5 6#7#, "&""(),0",+’) )4#$516$% ;>/D /D0 EF?/>?CFC. G0H0IFJ10?/ FK L, G0.>@? .EAI0,/D0 0JFED FK *+, G0.>@? DA. AIM0AG- AMM>H0GN 4. A ?0O *+, G0.>@? IA?@CA@0,*-./01, >. A DAMGOAM0 0PJA?G>?@ I>QMAM- A?G .>1CIA/>F? EFM0 QA.0G F? , 22 >? ?A/CM0,.F >/ EA? 1AR0 EF1JI>EA/0G 0I0E/MF?>E .-./01 1FG0I>?@ >?EICG>?@ .FK/OAM0 A?G DAMGOAM0 A/ G>KK0M0?/ AQ./MAE/ I0H0IN +? , 22 JIA/KFM1,>/ FKK0M. /D0 .FK/OAM0,DAMGOAM0 A?G >?/0MKAE0 G0.EM>J/>F?N 6D>. JAJ0M C.0. /D0.0 EDAMAE/0M>./>E. FK *-./01, /F M0AI>S0 /D0 3456 1FG0I>?@ A?G HAI>GA/0. /D0 .>1CIA/>F? M0.CI/ O>/D /D0 OAH0KFM1N 7%" 8352#% *-./01,;*+,;3456 收稿日期:!"":B"8B)’ $# 引言 集成电路的设计规模随着半导体工艺的不断进 步而变得越来越大,片上系统(*F,)的时代已经到 来,*F, 的设计思想被越来越多的设计者所接受。 由于高级语言本身与硬件描述语言不兼容,同时无 法有效地表述一些硬件系统特有的数据类型和时序 信息,*-?FJ.-. 公司、,FOAM0 公司和 TMF?/>0M U0.>@? 公司合作开发了 *-./01, 这种新型的系统建模语 言,其目的是为系统级设计提供一个公共平台来更 好地进行软硬件协同设计和验证。 %# !"#$%&’的开发平台 %& %# !"#$%&’语言与传统语言的区别 传统的 , 22语言是顺序语言,不能处理硬件系 统固有的并发性。它也缺少时间概念,不能描述时 间顺序,但是硬件系统必须以时间顺序来进行操作。 同时 , 22缺少硬件类型的通信,缺少重启机制,不 支持各种硬件数据类型:例如 V>/ 类型、多值逻辑类 型和定点数据类型等。传统的 WXUY 语言被广泛 应用于 ,ZYU [ TZ<4 的开发,它能够实现复杂的时 序、精简电路结构,是专用的硬件描述语言,但由于 缺少描述各种机制的支持,因此不能作为系统描述 语言。 *-./01,本质上是在 , 22的基础上添加的硬 件扩展库和仿真核,这使得 *-./01, 可以建模不同 抽象级别的包括软件和硬件的复杂电子系统;它既 可以描述纯功能模型和系统体系结构,又可以描述 软硬件的具体实现。*-./01, 源代码可使用任何标 准 , 22编译环境进行编译,生成可执行文件;运行 可执行文件可以生成 W,U、;LT 和 L*UV 格式的波 形文件。目前 *-./01, 最高版本为 !N "),可以完成 (包括)门级以上的设计描述。 %& ’# !"#$%&’的开发流程 用 *-./01, 可以在抽象层次的不同级别描述系 统。在系统最高层的系统级可以用 , [ , 22描述系 统的功能和算法。在系统的硬件实现部分可以在行 为级到 56Y级用 *-./01,的类来进行描述。系统的 软件部分自然可以用 , [ , 22语言描述。由此可见 针对系统的不同部分,*-./01, 都可以在不同的抽 象层次对其进行描述,而且这些描述在系统仿真时 专题技术与工程应用 万方数据 !"### !""# $%&’( )*+’*,,-’*+ .(/0 1# 2(0 1 可以协同工作。 用 !"#$%&’不仅可以描述要开发的系统本身, 还可以描述系统的测试平台以提供测试信号用于系 统的仿真。 一个熟悉 ’ ((语言的用户只要了解类库中各 种类引入的语义就可以用 !"#$%&’ 编程。!"#$%&’ 由一组描述类的头文件和一个包含仿真核的连接库 所组成,在用户的描述程序中必须包括相应的头文 件,然后可以用通常的 )*!+ ’ ((编译器编译该程 序。在连接时要调用 !"#$%&’ 的连接库产生可执行 的系统仿真程序。整个开发流程如图 , 所示。 图 /3 4567,89的开发流程 $% &# 4567,89语言的建模特点 !"#$%&’语言的特点就是能够支持对复杂系统 的设计。一个复杂的系统设计一般都要涉及软件和 硬件 - 个方面,!"#$%&’在这 - 个方面都有其独到之 处。它可以在任何 ’ ((集成环境中描述硬件和软 件,以及它们之间的接口。!"#$%&’ 语言平台提供 的建模元素和建模能力主要包括以下内容: ! 模块语句:!"#$%&’ 中定义了“模块”类,它 相当于 ’ ((中的类定义。它是一个层次式设计的 入口,一个模块可以嵌套其他模块; " 进程语言:进程被包含在模块中,用来描述 模块的功能。在 !"#$%&’中有 . 种不同类型进程以 满足不同软、硬件设计人员的需求; # 端口语句:用来描述模块和外界通信的端 口。!"#$%&’中支持单向和双向的端口; $ 信号语句:信号主要用来实现模块间以及模 块内部各进程间的通讯。!"#$%&’ 支持单驱动和多 驱动的信号。多驱动的信号可以有多个驱动,就是 通常说的总线(/0#); % 丰富的数据类型:!"#$%&’ 提供丰富的数据 类型以满足多种抽象模型,固定精度的数据类型可 用于快速仿真,任意精度的数据类型可用于大量数 据的计算,定点数据类型可用来实现 1!2; & 时钟语句:时钟在同步电路设计中是一个非 常重要的角色,而 ’ 3 ’ ((在描述系统时却很难表 达时钟。!"#$%&’ 中对时钟进行了描述,并把它当 作一种特殊的信号。时钟为仿真过程提供了时间基 准,!"#$%&’同时还支持在同一系统中的多个时钟, 以及任意相位的时钟; ’ 基于循环的仿真:!"#$%&’ 包含一个极小的 基于循环的仿真内核,这使得它可以进行高速仿真; ( 多抽象层次:!"#$%&’ 支持多种抽象级别的 建模———从高级的功能模型到非常精确的 456 模 型以及从高级模型向低级模型的转化; ) 通讯协议:!"#$%&’支持多层通讯协议,用来 描述各种抽象级别的模型和系统 + 3 7协议; * 调试支持:!"#$%&’支持运行中的差错检测, 并且可以通过编译选项来开启和关闭; +,- 波形跟踪:!"#$%&’ 支持 8’1、9+: 和 +!1/ 格式波形的跟踪。 ’# 用 4567,89实现 :;$< 在串行通信中,数据是一位一位按顺序进行的, 而计算机内部的数据是并行传送的。因此当计算机 向外发送数据时,必须先将并行的数据转换为串行 的数据,然后再发送;反之,当计算机接收数据时,又 必须先将串行数据转换为并行数据,然后再输入计 算机内部。通用的异步接收 3发送器,简称 ;)45, 就是完成并4串或串4并转换的硬件电路,它是串 行接口的核心部件,<-=>、<-=,、*!,?@=> 等芯片都 是常见的 ;)45 器件。由于 !"#$%&’ 在继承了 ’ ( (语言面向对象的优点的同时,又能充分支持各种 抽象级别的硬件建模,所以本文选用 !"#$%&’ 这种 !7’设计语言来实现 ;)45。如图 - 所示,;)45的 顶层模块由波特率发生器、接收器、发送器 . 部分构 成。发送器将准备输出的并行数据转换成串行数 据。接收器将获得的串行数据转换成并行数据。波 特率发生器实际上就是一个分频器,它接收系统时 钟和分频参数,并向接收器和发送器提供分频后的 时钟。复位模块提供复位信号,信号为 > 时复位。 图 !3 :;$<的结构框图 专题技术与工程应用 万方数据 !""# 年 无线电工程 第 $# 卷 第 $ 期 !"### 模块是 %&’()*+中用来划分设计的基本块。模 块允许设计者把复杂的系统划分成更小的、可以管 理的块。模块能在一个设计队伍中划分复杂的系 统,允许设计者隐藏内部数据和算法,迫使设计者采 用公开接口与其他模块进行通信,并且使整个系统 更容易测试和维护。 本设计中的 ,-./ 由 +0,、接收器、发送器、分 频器和复位模块 1 个部分组成。+0,模块的定义代 码如下: %+ 234,56(789) { ’7 :; < =>>? @ 7?A;B B系统时钟 ’7 :; < 9;’:C;)D 7EFG @ HG>* G;B B接收到的数 据回显 ’7 :; < =>>? @ (=9’&;B B握手信息 ’7 >9( < 9;’:C;)D 7EFG @ (> (;B B往发送模块 写数据 ’7 >9( < :;( @ 8FGF;B B分频参数 ⋯⋯ } 其他几个模块的定义方式与 +0,模块类似,这 里不再赘述。从 +0, 模块的定义中可以很直观地 看出相对于 +0, 来说 7?A、(=9’&、HG>* G 信号为入 信号,(> (、8FGF信号为出信号。这种对输入输出信 号的定义和对时钟的描述是 + B + II语言难以实现 的。 $# 运行结果 %&’()*+中提供了 ’7 7G)F() J7D (GF7) H:?) 函数 excel方差函数excelsd函数已知函数     2 f x m x mx m      2 1 4 2拉格朗日函数pdf函数公式下载 用来生成 J7D波形文件,用波形工具 C(AKFJ)打 开这个波形文件可以查看该 ,-./模型是否工作正 常。如图 $ 所示,+0, 对分频器设定的分频系数为 L,(>(是 +0,传送给发送器的并行数据,HG>*G 是接 收器返回给+0,的并行数据,(GDF(F是发送器传给 接收器的串行数据,G’( 是复位信号,87?A 是对系统 时钟的 L 分频,=9’& 是当发送器开始向接收器传送 串行数据时发送器发出的忙信号。 本 ,-./中的数据包格式为 M 位起始位(逻辑 "),L 位数据位,M 位结束位(逻辑 M)。发送器每 L 个 87?A发 M 个串行数据,接收器采样第 N O P 个时 钟的数据,且对这 $ 个数据采取 $ 取 ! 的表决 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 。 从图 $ 中可以看出 +0, 发出的数据与接收器返回 给 +0,的数据一致,所以该 ,-./工作正常。 图 !" #$%&仿真波形 !# 结束语 本文使用 %&’()*+ 构造的 ,-./ 模型,内部结 构清晰、功能可扩展性强、具有很高的可移植性。在 设计过程中,充分体现了 %&’()*+ 语言易于掌握、抽 象描述能力强和仿真速度快的特点,显示出了它在 %3+设计方面的明显优势。 ! 参考文献 [M]陈曦,徐宁仪Q %&’()*+ 片上系统设计[2]Q 北京:科学 出版社,!""NQ [!]徐煜明,韩雁Q单片机原理及接口技术[2]Q 北京:电子 工业出版社,!""NQ [$]李华文,陈金树Q 基于 %&’()*R>;R+E:8 技术的超高速遥 测系统的实现[S]Q无线电工程,!""$,$$(#):!N T !LQ 作者简介 王U 颖U 女,(MV#V T),中国电子科技集团公司第 1N 研究所助 理工程师。主要研究方向:计算机应用 555555555555555555555555555555555555555555555 5 5 5 5 5 5 5 5 55555555555555555555555555555555555555555555 5 5 5 5 5 5 5 5 5 6 6 6 6 。 有关著作权转让声明 凡向《无线电工程》期刊所投稿件,作者需在稿件录用时签署《论文著作权转让书》, 将该论文的复制权、发行权、信息网络传播权、翻译权、汇编权等权利在全世界范围内转 让给《无线电工程》期刊。凡被《无线电工程》期刊录用的稿件将同时通过因特网进行网 络出版或提供信息服务,稿件一经刊用,将一次性支付作者著作权使用报酬,即包括印 刷版、光盘版和网络版各种使用方式的报酬。 专题技术与工程应用 万方数据 基于SystemC的UART设计 作者: 王颖, 王赛宇, WANG Ying, WANG Sai-yu 作者单位: 中国电子科技集团公司第54研究所,河北,石家庄,050081 刊名: 无线电工程 英文刊名: RADIO ENGINEERING OF CHINA 年,卷(期): 2007,37(3) 引用次数: 0次 参考文献(3条) 1.陈曦.徐宁仪 SystemC片上系统设计 2004 2.徐煜明.韩雁 单片机原理及接口技术 2004 3.李华文.陈金树 基于System-on-Chip技术的超高速遥测系统的实现[期刊论文]-无线电工程 2003(7) 相似文献(9条) 1.期刊论文 杨荣.朱建彬.胡博.朱勇.YANG Rong.ZHU Jian-bin.HU Bo.ZHU Yong 基于SystemC的片上系统设计 -武 汉科技学院学报2008,21(7) 本文首先提出了一种基于SystemC的片上系统设计方法,它能够很好地实现软硬件的协同设计,接着提出了一种改进的基于UML建模的片上系统设计方 法,此设计方法通过UML对顶层系统建模,用SystemC描述硬件部分,提高了芯片研发团队的协调工作能力,进一步加快了SoC产品的开发速度. 2.期刊论文 钟辉捷.雷航.ZHONG Hui-jie.LEI Hang 基于Petri网和systemC的SoC系统描述 -计算机应用 2007,27(2) 针对Petri网自带信息不足、硬件描述能力弱以及systemC无可视性等缺陷,将Petri网与systemC相结合来进行系统级建模.通过分析Petri网和 systemC的相似点,建立Petri网和systemC的映射关系,以便于将Petri网描述的系统模型转化为systemC代码.同时,使用层次建模的方法防止状态爆炸.通 过以上方式建立系统级模型,描述片上系统(SoC)嵌入式系统软硬件状态,作为可执行的系统级描述. 3.期刊论文 陈绍贺.赵明.王京.CHEN Shao-he.ZHAO Ming.WANG Jing 基于SystemC的片上系统设计 -微电子学与计 算机2005,22(4) 文章提出了基于SystemC的片上系统设计方法.本设计方法引入SystemC,消除了一直存在于系统级设计和硬件设计之间的语言隔阂,基于SystemC进行 的系统功能定义能够方便有效地映射为硬件实现部分和软件实现部分,大大地提高了SOC时代集成电路设计效率. 4.期刊论文 刘金伟.方林波.黄樟钦.侯义斌.LIU Jin-wei.FANG Lin-bo.HUANG Zhang-qin.HOU Yi-bin 基于 SystemC的SoC系统级设计方法 -佳木斯大学学报(自然科学版)2006,24(3) 随着嵌入式系统的发展,片上系统(SoC)设计已经成为集成电路设计的发展方向.SoC设计的复杂性对集成电路设计的各个层次,特别是对系统级芯片设 计层次带来了新挑战.SystemC是一种完全基于C++的系统级建模语言,它同时支持RTL级、行为级和系统级描述.本文介绍了SystemC的特点和系统设计环境 ,有利于进行SoC系统级设计,并阐述了一种基于SystemC的系统级设计方法. 5.学位论文 杨志勇 基于SystemC的DES算法建模和验证 2006 随着芯片集成度的快速增长,集成电路工业进入到了片上系统(SystemonaChip,SoC)时代。急剧上升的复杂度和日益苛刻的上市时间向传统设计方 法提出挑战,迫切需要更有效,更快速的新的设计方法的支持。 SystemC应运而生,它是系统级设计的统一软硬件建模语言,支持从概念到实现的 无缝设计流程。使用SystemC使得设计基于统一的语言环境,整个系统得到可执行的功能规约,软硬件协同验证在设计前期就开始,仿真速度更快。它避 免了传统的设计方法中由于使用了多种设计语言,不同设计人员之间存在的交流障碍。 另一方面,在信息安全日益重要的今天,加密作为一个最 为有力的武器,正在发挥着重要的作用,数据加密 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 (DataEncryptionStandard,DES)安全性高、运算简单、速度理想。利用SystemC对DES建模并得到 硬件实现极具理论意义和现实意义。该加密模块可以广泛运用于诸如智能卡之类的各种产品。 本文运用SystemC完成了DES算法的建模和功能验证 。所做的主要工作如下: 1.针对目前SystemC还不是很成熟,支持其设计的流程和工具不是很完善的现状,结合相应的EDA工具给出一套基于 SystemC的设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 ;探索出基于SystemC核心库和SystemC验证标准(SystemCVerificationStandard,SCV)进行功能验证的方法。 2.以面积为目标 ,对DES算法的具体实现做了改进和调整,并对算法实现的体系结构做了合理优化,完成了算法建模。 3.利用一个经过验证的行为模型作为参考模 型,对建立的模型进行了功能验证。验证中采用了SCV验证库提供的随机测试向量生成方法。 4.对不可综合的代码进行修改,利用 SystemCCompiler将它转化为VerilogHDL并完成了综合和自动布局布线。 6.期刊论文 李挥.陈曦.罗勇 SystemC中一类特殊线程与状态机研究 -半导体技术2003,28(3) 作为一种系统建模语言,SystemC支持各个抽象级别的硬件描述以及软硬件协同设计和验证.在SystemC中定义了一类特殊的线程称为钟控线程,虽然是 行为级描述,却是面向综合优化的.该类线程最适合描述一种隐式的有限状态机.本文描述了该类线程的特点,并以一个总线控制器的设计为例,比较了隐式 有限状态机相对于一般显式有限状态机的优点. 7.会议论文 韩伟华 SoC设计语言:SystemC 2003 应用的需求和集成电路工艺的发展促进了复杂的片上系统(SoC)的实现,同时也要求新的设计方法以支持复杂SoC的设计.高效率的软硬件联合设计需 要对整个SoC进行更高层次(例如Transaction Level)的抽象以提供更快的仿真速度及更高效率的SoC设计验证方法.本文介绍了一种重要的SoC设计语言 :SystemC,以及基于SystemC的Transaction Level模型和使用Transaction Level模型进行SoC的软硬件联合设计的方法. 8.学位论文 程春雷 基于SystemC的ARM内核SoC平台功能模型的设计开发 2008 目前,SoC(System on Chip,片上系统)已经成为当今集成电路设计的发展方向。设计、验证和测试已经成为SoC设计中面临的巨大挑战。用软件对 硬件进行仿真已经成为SoC设计中极其重要的环节。 本文分析了目前最常用的建模语言SystemC和基于当前最为流行的ARM核的AT91微控制器的结构 。在Linux下用SystemC搭建一个SoC纯功能模型平台,主要包括运行一个简单操作系统所必需的CPU、中断控制器、定时/计数器和同/异步收发器等模块 的实现。最后将μC/OS-II进行编译,移植到该SoC仿真平台上对其正确性进行了验证。 9.期刊论文 张奇.曹阳.李栋娜.马秦生.ZHANG Qi.CAO Yang.LI Dongna.MA Qinsheng 基于SystemC的SoC行为级软 硬件协同设计 -计算机工程2005,31(19) 针对目前SoC设计中存在的软硬件协同验证的时间瓶颈问题,提出了一种使用系统建模语言SystemC对SoC进行总线周期精确行为级建模的方法,采用该 方法构建SoC芯片总线周期精确行为级模型进行前期验证.该模型基于32位RISC构建,并可配置其它硬件模块.实验结果表明:模型完全仿真实际硬件电路 ,所有的接口信号在系统时钟的任一时刻被监测和分析,很大程度地提高了仿真速度,并且可以在前期作系统的软硬件协同仿真和验证,有效地缩短了目前 SoC芯片设计中在RTL级作软硬件协同仿真验证时的时间开销. 本文链接:http://d.wanfangdata.com.cn/Periodical_wxdgc200703017.aspx 下载时间:2009年10月14日
本文档为【基于SystemC的UART设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_294370
暂无简介~
格式:pdf
大小:206KB
软件:PDF阅读器
页数:5
分类:互联网
上传时间:2009-12-27
浏览量:30