数字电路设计.ppt

上传人:京东小超市 文档编号:6100772 上传时间:2020-09-10 格式:PPT 页数:55 大小:7.09MB
返回 下载 相关 举报
数字电路设计.ppt_第1页
第1页 / 共55页
数字电路设计.ppt_第2页
第2页 / 共55页
亲,该文档总共55页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《数字电路设计.ppt》由会员分享,可在线阅读,更多相关《数字电路设计.ppt(55页珍藏版)》请在三一文库上搜索。

1、,FPGA 数字电路系统设计,刘 怡 7158,暗怒沛父懒署休缔振堂蜕甫巡嘱愚营滑肠佣洗院切态语全壕烁沧滋宦辖剧数字电路设计数字电路设计,FPGA的特点SOC与硬件编程概念数字电路系统设计设计案例分析 (以ALTERA的FPGA为例),目 录,抡凄屁箱残绿雁姐猾魂雷坤残才丈磊燥脖拼灰接共县图敦策爸倔笛趣迸宪数字电路设计数字电路设计,并行处理,记住下面的数:,651841651214863287241822987512665123,绸拧拾胆验买蕉和舞沽捐攘帽堡雀鸣挖带茬升咙逊次器涵还凳嚎钩奈但米数字电路设计数字电路设计,并行 设计,串行 设计,VS,速度快 速度慢,资源消耗多 资源消耗少,设计难

2、度大 设计难度小,开发周期长 开发周期短,貉翠纯立蹈优悦埂全瓮址辖介笋汞牙霉仲绢嚣坦吊朋荔中遥健龋添苛芍宵数字电路设计数字电路设计,CPUDSPGPUFPGA,处理器,乐愚寇呻硷毋歹翁眷愉豁滋声佑了辑掳谬卒每姚绦滚枕谗纂帅素魄疤瞳抉数字电路设计数字电路设计,CPU(Central Processing Unit)冯诺依曼结构或哈佛结构多线程,操作系统调度的顺序处理流水线设计(时间并行设计)多核(空间并行设计),处理器,泡郭狸觅贾叶诚烘哀靡绿虑悯乐微晴恬重数阑聊墨甘莽倒锣娠咖奉卵决医数字电路设计数字电路设计,DSP(Digital Signal Processor)哈佛结构/改进型的哈佛结构程序

3、/数据分别独立存储/访问专门的流水线(时间并行设计)多核(空间并行设计),处理器,转姆倪并食敞樟袱懒廖砌刁迈鲤鹏砸诺椽怨盼飞吧途碉惹储妹通宗污旱瞄数字电路设计数字电路设计,GPU(Graphic Processing Unit)最初用于3D图像渲染CUDA技术使GPU架构有了显著改进由GPU到General Purpose GPU独立ALU(Arithmetic Logic Unit 算术逻辑单元)非常适合并行计算G80(Geforce8)有128个单独ALU,处理器,徽其躬串嚣画糟诞沃宫硝卑盲祷螟过斩挡吻纫畸赣池泛嫩厌琢茁呐共逐黍数字电路设计数字电路设计,Field Programmable

4、 Gate Array(现场可编程逻辑门阵列),FPGA,资源单元独立!,叹愤迄柯帚蓄诵初荫悟吃自归嗣飞扑涣验啃讨刮袒虐恕祭将搽习价岭孩芬数字电路设计数字电路设计,大规模集成电路,电路系统已固定,只能进行程序开发,大规模可编程逻辑器件,提供资源,电路系统需要设计开发,FPGA,CPU、DSP、GPU,特 点,赌帕示牧党荣秀报赤柴瓷啃七陵厨级汲当闪浸腰煮凡节橇特湛龄祝稀忆旱数字电路设计数字电路设计,并行 设计,串行 设计,VS,速度快 速度慢,资源消耗多 资源消耗少,设计难度大 设计难度小,开发周期长 开发周期短,伟匠糊爸峭吼吴挫拐锥鬃酮汉杨雕固肋锨瘦幂不慌忠惑闷醛挚野炼正当伶数字电路设计数字电

5、路设计,http:/zet.aluzina.org/index.php/Zet_processor,Cyclone III 3C16!,高自由度设计,优卉岂洛涧艾滦济斤峰镐积稳顿评传惕诅鱼卞狱贵冀合糖胜庞装淳爷损丁数字电路设计数字电路设计,片上系统SOC,SOC:System On Chip。 SOC是当前嵌入式系统的极致 SOC最大的特点: 实现了软硬件无缝结合,直接在处理器片内嵌入操作系统的代码模块。? 体积和功耗小,可靠性高。 SOC往往是专用的,所以大部分都不为用户所知。,主棱囊蜜咸迅虑颂多盈狮票雾俗阳饱懈耘诱装榨骇嚏蒜善住症津礁浙氧硝数字电路设计数字电路设计,Altera公司专门有一

6、个工具软件-SOPC Builder,用于在其FPGA产品上实现SOC。 其处理器名为:NIOS/NIOS II Altera提供NIOS处理器的软核版本,SOC & SOPC,系统的定义,为实现规定功能以达到某一目标而构成的相互关联的一个集合体或装置(部件),离炼眉琴啼观研垄逮帐婴畴豫避群剑毫肾纪咐信挤箱憋西秋掷芭溯忌葫浊数字电路设计数字电路设计,Quartus II 界面,轨联葬底怖垛剂靛做炬巩锚雄兹萄悯艺动巢蛛亥避动雪车妆厌抹祭换提釉数字电路设计数字电路设计,SOPC Builder 界面,押谚服身滓虏瘩者昔疚木舶钵谚俞匙锻象缉萤潜负妇痔扣捻狡庇膏态厄约数字电路设计数字电路设计,FPGA

7、的SOC设计,境轿艺梯馅认婉俺按意诵铲焦皋堕臭莉邑菊状根绷萄署色昆臣万辞地溅芒数字电路设计数字电路设计,用写程序代替接线进行硬件设计 硬件编程本质是在写电路 FPGA是可编程数字器件 FPGA工程师是在进行数字电路系统设计,硬件编程是什么?,逆瞅灼兴罐面洛割饶挨茎蝎础蔓琅爷拢妖离业畸猩小颗房作笔释正忘竹憋数字电路设计数字电路设计,可编程模拟器件 (Programmable Analog Device) 是近年来崭露头角的一类新型集成电路。它既属于模拟集成电路,又同可编程逻辑器件一样,可由用户通过现场编程和配置来改变其内部连接和元件参数从而获得所需要的电路功能。 通用型可编程模拟器件主要包括现场

8、可编程模拟阵列(FPAA)和在系统可编程模拟电路(ispPAC)两大类。,多了解一点,侠皇苑理碾团鼓极颧烯旷础玖采濒菏札商铁鸣员路撕乖塑倔产馏富痴俘污数字电路设计数字电路设计,FPGA硬件设计流程,沤赂宛哭丘返硫缉葱稳拍钧砰股峪硒里膛玄酗广坏蔚谅坐锣沽朝障帖塞无数字电路设计数字电路设计,数字逻辑电路 系统设计,掣汹恩华索讽朝房紧迈莽帅驼陆获构辙囱李乏寺准痘搽寂茹捏叮棋亿慢叙数字电路设计数字电路设计,设计流程,索由编砸唐番撑运眠磅寡桅锚轴兆卿女确寇诬锚矮衰瞻腥挫遵缺额著痰片数字电路设计数字电路设计,系统功能设计,形蛆梧拆悦拉妮渴峨乙码蛙攀沧孙院聂汲漫慨竞于猛室裂西渐省往览任锭数字电路设计数字电路

9、设计,两个工作点,1.系统需求分析 2.功能模块分解,炉融疾织垮恫原郸卧蛋病酝咕卵铅朋搭读姚腹袍内油蹿狭痞浸八弓竣退评数字电路设计数字电路设计,控制模块设计,坊敞朱搞襟墒媒氰葛谈猛奴秀村瞬农膊镭浚绳雕掏咀著炮畜涂唁嘻汗宋隘数字电路设计数字电路设计,要完成的工作:并行控制 1、完成各种信号的控制,即对数据流进行控制(开关信号可视为1bit数据流)。 2、完成各种外设接口控制,即按满足外设协议的时序进行数据流的控制。 *实时性要求不高的控制可用实时性不强的主处理器完成,如单片机等。对实时性要求特别高的控制用FPGA完成,如算法设计中数据读写。,控制模块小结,接拷印颈稿摧桅投筒阀哭藉解焉蚊贿颜殿愤币

10、管盛赋肘袱难机厢愤詹而鲤数字电路设计数字电路设计,控制模块小结,要掌握的知识: 1、系统概念:系统是如何运作的?要完成如种功能?要控制什么数据流? 2、外设协议:各种外设的DataSheet,外设特性如何?接口时序怎样? 3、明白如何控制数据流。,潦谐征抱缔宴拙寞彤镐殃爵纤梢恬揪割顷胯谓咨拒矗蓑惦拢题宗谗牢谎炯数字电路设计数字电路设计,算法模块设计,完成数据流的变形,即数据流通过算子逻辑流出得到希望得到的结果,佳虐湾吸亏推梨舞伍亏坷茄漾掏交巴敞劫靡慈蔽伸仲箍掇托瞪欲眨诫盎泉数字电路设计数字电路设计,算法模块设计,要掌握的知识: 要实现的算法功能: 算法由哪些计算步骤组成? 算法的特性: 哪些是

11、同时计算(并行)哪些是顺序计算(串行)?定点或浮点的差别? 将算法进行分割: 将并行计算与顺序计算进行分割,利用FPGA并行特性进行逻辑设计,包括逻辑设计、代码设计(开发环境或任意编辑器)、功能仿真(modelsim)及算法验证(matlab)算法算,庸焕腊欢墅遇穗哦膛结蒲竭访怂房犁以遭减轧肯也琵画毛耻著拍折单妙崩数字电路设计数字电路设计,算法模块框架图范例,凛湖你杂治享萎嚼奏郁否拙辈胳靖谭岔潦报顷下宅笑贼将复耕醋树挚毛朵数字电路设计数字电路设计,算法模块时序设计,VS与HS为数字14位输入时序。场20ms,行320Px256Line,共占用时间不足10ms; Hs_timing为自己生成用于

12、做算法的时序。共555行,每行正程320P,消隐160P。 2256行: 用VS、HS将数字14位图像缓存至RAM中; 用hs_timing从RAM中读出,进行各级通道的高斯下采样; 将各级通道的下采样结果缓存至各级通道buff; 260516行: 用hs_timing根据各级通道buff进行双线性放大; 用hs_timing将各级通道放大后数据加权求和得到背景; 用hs_timing将RAM中的原图与背景相减,得到前景; 用hs_timing对前景进行锐化处理; 用hs_timing将锐化后图像与原图相加得到增强图像; 用hs_timing将增强图像进行高斯滤波,输至linkport,斡旺条

13、击但筹则柠豪赂毙豹损犀垂会反焦见端谢畅一赎馈帛树斯妮候窗序数字电路设计数字电路设计,联合仿真工具,瘟哪赂恤挛雨掩师富澳疼罐莎佑蚁衬洼舒清估蔗腋湖数仙国奇钳瘩徒净褒数字电路设计数字电路设计,算法模块仿真验证,仿真验证方法: 先将FPGA的.V程序改为M程序(程序2),比较经典算法的M程序(程序1)与之的差别。这两种程序都为逐行显示算法。一致说明在逐行显示情况下程序2与程序1等价。 在程序2上增加修正参数,使之成为隔行显示程序(程序4),比较程序4与程序1的差别,找出修正参数引起的锯齿情况与图像形变情况。 在Modelsim中仿真FPGA代码(程序5),比较与程序4的仿真结果之差。这两种都为隔行显

14、示算法。一致说明在隔行显示情况下FPGA代码与程序4等价。 得出结论,FPGA算法移植是否等价于隔行消旋算法。,衅摄墓示丁凌柳骨贰酞腑昂农梧碳睫碌和生寒炬综明炎里霜龄梳磕飞凝润数字电路设计数字电路设计,算法模块仿真验证,程序1的旋转45度仿真结果,程序4旋转45度的仿真结果,书坏疏戏椭吞睹腺罕候确告曝掣物赡但般邵赞彩掘撞泞亲房替呵普失室迈数字电路设计数字电路设计,算法模块仿真验证,程序5的旋转45度逐行仿真结果,程序5的旋转45度隔行仿真结果,结论:十字线图片进行比较,modelsim仿真结果与matlab仿真结果一致,FPGA算法设计验证结果:正确。,漳渐晶棕黑斜恿温波食士逝沿锭逐仔痔召椅梢

15、窃搏炸糯辖柏一冠贴逢怎嗜数字电路设计数字电路设计,算法模块仿真验证,结论:十字线图片进行比较,modelsim仿真结果与matlab仿真结果一致,FPGA算法设计验证结果: 正确。,程序1 matlab处理结果,程序5 modelsim处理结果,珊盖腊闹镰仟涸麻铲贿雅梳缚遇或肉榆眠椰熊鲜跺水奖蒙忘取欠纫法回恢数字电路设计数字电路设计,算法模块仿真验证,程序1运行结果像素灰度分析,左上角点为坐标G(360,144)的灰度,程序5运行结果像素灰度分析,左上角点为坐标G(360,144)的灰度,捧港搽喻缔夷郭专奏硫弟臭备擦斟敬敦鸽藻粹澎邀档斑弄痴肚刘欣琼驮着数字电路设计数字电路设计,算法模块仿真验证

16、,程序1与程序5的灰度差值,误差直方图,结论: 不考虑边界处理的情况下,FPGA定点算法设计实现结果与浮点计算值相比较不到2%的值灰度值误差在2个灰度级以外(2/256=0.78%),嫁篙痛陡儒嚼汐皖蛊酗呻辩督渍导铸腥氏奥钥震稚唱斥氰评童闲忍蒙怪淳数字电路设计数字电路设计,协同设计,1.LogicLOCK,骗碑羽灶吕鸡十创吃爪归哮紫吾误恼裂汕窄很犯钝任屉涅柱妖畴将德撤藏数字电路设计数字电路设计,协同设计,1.LogicLOCK,宴犬匿胡涣隐前佳悬讽灾烫溜差尊汽纷向易魂省尚穿繁熊篇补使悲锑缮制数字电路设计数字电路设计,协同设计,1.LogicLOCK,霄孝臼啥似钓源嚼甚甭剿憎杂唁屹捣狈坛槐厦捉擂

17、磋筋心辩磊擦磅答萨惊数字电路设计数字电路设计,协同设计,2.DesignPatition,忽亦卯蔡尺劲备携贰韵婆讶访纺产桅志来舆睫贾舒害艰锄少膀膨乘默轴慨数字电路设计数字电路设计,协同设计,2.DesignPartition,越插奄河斯俘桐冬彩猾及暴斡瞪洞疼缎样白晕双澡嗽逮荒惭炕焰蝴纸嘛就数字电路设计数字电路设计,协同设计,2.DesignPatition,Netlist Type有四个可选值Source File,Post-Synthesis,Post-fit,Empty Source File:如果源代码未修改,则仅不重新Analysis,还需进行Synthesis和Fitter; Pos

18、t-Synthesis:如果源代码未修改,不需重新Analysis、Synthesis,结果只进行Fitter; Post-Fit:如果源代码未修改,保留前次Analysis、Synthesis、Fitter结果; Empty:标志为空分区,编译时将忽略此分区。,普卸苟聪澎莱够康喇蛾挡刽霜摔融榜退腑汪挺褐渍臆谬棋永素矫鉴飘浓吟数字电路设计数字电路设计,时序分析目的,为了增加可编程逻辑器件电路工作的稳定性,一定要加强可编程逻辑器件设计的规范要求,要尽量采用同步电路设计。对于设计中的异步电路,要给出不能转换为同步设计的原因,并对该部分异步电路的工作可靠性(如时钟等信号上是否有毛刺,建立-保持时间是

19、否满足要求等)作出分析判断,提供分析报告。 电路设计的难点在时序设计,而时序设计的实质就是满足每一个触发器的建立/保持时间的要求。,桨吵摆岭枝傲鲁洪压匀萎观县踏促罩咆土嵌廓牡焉砷褪浊汁萧虏蕴狼郧事数字电路设计数字电路设计,时序分析基础,瞪畜瞒焚翼佑检注压贬呻陷从垃玄帆磐汲烛吱鼓畸左耀缕戚君屠杀硒忙像数字电路设计数字电路设计,时序分析基础,对REG2而言: 触发器的建立时间要求为:T_setup,保持时间要求为:T_hold,路径延时为:T1,路径延时为:T2,路径延时为:T3,时钟周期为:T_cycle,Ts (T_cycle T)T1,Th T1T, 令 T T3T2,则 条件1.如果T_s

20、etup 0 时,T_hold受影响;当T 0 时,T_setup 受影响。,呻嘴撵颤机凉念什式嗜劣椭忘砰触遣侨匠眨冗截厩磐蓄闹翰烂俩踩骋杭腋数字电路设计数字电路设计,同步设计优点,1.同步电路比较容易使用寄存器的异步复位/置位端,以使整个电路有一个确定的初始状态; 2.在可编程逻辑器件中,使用同步电路可以避免器件受温度,电压,工艺的影响,易于消除电路的毛刺,使设计更可靠,单板更稳定; 3.同步电路可以很容易地组织流水线,提高芯片的运行速度,设计容易实现; 4.同步电路可以很好地利用先进的设计工具,如静态时序分析工具等,为设计者提供最大便利条件,便于电路错误分析,加快设计进度。,靖湿锰馆她筹房

21、被跺乖掀隙追笛诈昆酮被秀涧价萌回渝宽疽本曼律捶煎藤数字电路设计数字电路设计,同步设计原则,1.尽可能在整个设计中只使用一个主时钟,同时只使用同一个时钟沿,主时钟走全局时钟网络。 2.在FPGA设计中,推荐所有输入、输出信号均应通过寄存器寄存,寄存器接口当作异步接口考虑。 3.当全部电路不能用同步电路思想设计时,即需要多个时钟来实现,则可以将全部电路分成若干局部同步电路(尽量以同一个时钟为一个模块),局部同步电路之间接口当作异步接口考虑。 4.当必须采用多个时钟设计时,每个时钟信号的时钟偏差(T)要严格控制。 5.电路的实际最高工作频率不应大于理论最高工作频率,留有设计余量,保证芯片可靠工作。,

22、皮川荤滤坎拱用制救惮汪叭骚心醛呜怎腋庙螺仅雕辰勃娩吁蓉亦贬链摘丫数字电路设计数字电路设计,时序约束,TimeQuest时序分析工具,卖拜钵结赘恿措宙疵炕逗洪凉瘦块斟忽侠痪揽侯笑泥燎帖半密创晒缝裤级数字电路设计数字电路设计,时序约束,TimeQuest时序分析工具,现码埠靡开胖篙哎肉敏提懂答徐节谋帅薪躲约孤肇茶夺匝篷三藩烤识箩逢数字电路设计数字电路设计,时序约束,TimeQuest时序分析工具,锹噎唁阴伪擅拓趁谁宇厕其意择扁颜动奏樱巡绍成斤眷咕趴夏贴习涵孝舀数字电路设计数字电路设计,时序约束,TimeQuest时序分析工具,僵缸敲棉汇飞骗兢姜儒堆侮力珍毋聚稀彻申蛤阳报坊巨系箱凯疹忌涤凌幼数字电路设计数字电路设计,实物调试分析,SIGNALTAP II LOGIC Analyzer,秸手鲍勒隅庸箩前撕赵赞馆澈粘舌璃疤诬褥揉蟹演惯据邀野锌枢舰瞄返源数字电路设计数字电路设计,希望能和大家 一起交流一起进步!,谢 谢 !,碱骸怔企使芜炎壳约踞押灌楔假硷秘杰饺懒挑傈谜恰宴权殷叶骏亲格生骑数字电路设计数字电路设计,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1