FPGA HDL代码实现过程

小编在本节完整给出一个设计过程,可利用ise或vivado硬件编程软件实现。
1 hdl代码、逻辑电路和器件
编写“hdl代码”来描述电路功能eda工具中进行“rtl综合”和“综合”
“rtl综合”将hdl代码转换为逻辑电路
“综合”这一步将经过“rtl综合”后的门电路映射为fpga器件的物理结构“实现”这一步将对fpga器件进行最终的布局布线综合实现的结果将会被转换为可以最终运行在fpga器件上的二级制烧录文件2 hdl代码实例
在每个时钟clk信号的上升沿,实现输出信号dout的值为输入信号ain、bin和cin的2级门运算的结果这个门运算先是ain和bin“逻辑与”,它们得到的结果再和cin“逻辑或”输入复位信号rst_n为异步复位信号,任何时刻这个信号的下降沿将直接触发输出信号dot取值为0举个栗子
module at7( clk,rst_n, ain,bin,cin,dout ); input clk;input rst_n;input ain,bin,cin;output reg dout; always @(posedgeclk or negedgerst_n) if(!rst_n) dout <= 1'b0; else dout <= (ain & bin) | cin; endmodule3 rtl综合
“rtl综合”后的逻辑电路原理图,它很好的以门电路的形式表达了我们的实例代码“rtl综合”门电路和hdl代码所描述的功能完全一致,大家对比下图和第2节的代码。下图即是代码rtl综合后的布局。
图1 rtl综合后的逻辑电路原理图
4 综合
“rtl综合”是指将hdl代码转换为逻辑门电路形式来表达的一个过程;“综合”却是将已经用逻辑门关系表达的电路进一步转换为fpga器件实际物理结构相对应的电路形式 “综合”电路中看不到任何的“门”“综合”的结果是所使用的特定fpga器件中实际存在着的物理结构,如“输入缓冲”、“查找表”、“触发器”和“输出缓冲”等
图2 rtl综合与综合的关系
图3 综合后的逻辑电路原理图
5 实现
在“综合”给出hdl代码与实际fpga器件的映射关系后,做具体执行的工作如果把“综合”结果比喻为电路板设计的“原理图”阶段,那么“实现”这个步骤就是具体的“布局布线(layot)”阶段
图4 布线图
6 生成烧录文件
如同电路板的layout完成后要生成gerber,fpga工具最终也要产生一个bit文件用于烧录到fpga中运行了

曝谷歌Pixel4系列全系标配90Hz显示屏 运行最新的Android10系统
京东如何在物联网发展快车道取得胜利
趁AR风口,Micro LED和Micro OLED加速落地
中国医学专家致力研发国产医学机器人
如何解释TCP报文的内容
FPGA HDL代码实现过程
三星携Neo QLED 8K电视亮相2021北京设计周
传骁龙875已用台积电5nm芯片生产 或将明年亮相
电容屏的使用缺陷是什么,它有什么缺点
薄膜电阻和厚膜电阻的区别是什么?哪个好?
第三届恩智浦车载网络研讨会成功闭幕
高效理解机器学习
迈入多元发展阶段的半导体该何去何从
火花塞为什么一换就是全部_只换一个不行吗
图形用户界面的协作工作的应用
LED行业涨声响起是被逼无奈?还是主动营销?
EDAGit:国内第一个以芯片验证为核心的技术社区正式上线
份额增66%!海尔智家厨电“卖场景”收获用户
家用电器电动机及变压器的自复电路保护
智能手机是过去十年这个世界高速增长最大的驱动力