杏彩游戏官网

【技术分享】FPGA杂记之基础篇

发布时间2020-12-23

探讨

Verilog基础语法



1.1  可综合模块


以module为模快,中应控制内容如下:



1.1.1 时序逻辑


以异步引发的D引发器实例,时序思维在always块里推动。



首要目光点:


1. 书面声明包块时,填写因变量必须是wire业务类型。


2. 声明书版块时,转换自局部变量是应该是wire,也是应该是reg, reg自局部变量才能在always块中赋值。


3. 神经敏感所有既能能是边沿打断,也能能是电平打断。


4. 沿启用的道理里,肯定用到的毫无疑问非闭塞启用<=。


1.1.2 组合逻辑


以统计数据确定器为例子,结合逻辑学一般操作assign语句赋值。



主要留意点:


1. sel = 0时,c = a;sel = 1时,c =b,即二选一参数选泽器。四选一条有这两个选泽端,几个键入端,八选一条是五个选泽端,7个键入端。


2. wire 变量值很大用到间断赋值语句赋值,而是需用堵赛赋值。


1.2 模拟仿真电源模块


模型仿真版块和可基础性版块的本质区别 :


可整体模快决定导出的bit信息会烧录进单片机芯片启动,而模仿模快编译前一天是在模仿工具(比如说modelsim)上启动的。模仿模快是特征提取可整体模快做出例化,并也可以通过模仿工具的模拟网,也可以最初始证实公司写的可整体模快的推动毛细现象。


以计数器器为例子,可綜合摸块内容如下:



通过以下可整体控制器的逼真控制器如下所述:



1. 防真的控制模块证明函不所需填写详细信息。


2. initial块仅能对【寄存器】量做出赋值。


3. 例化功能时,要是默认功能是输出精度字段,则括号内必需【wire字段】。


HDL常见例子


2.1 译码器


2.1.1 可综合模块(case语句)


此打印工作内容输出精度模块用case控制了数量据挑选的功效,先形成了个8位计算法法器,采用辨别计算法法器的值来打印工作内容输出精度各不相同的取值,当计算法法器计算法法到1时,o_data和o_dv依次打印工作内容输出精度5和1,当计算法法器为2时,打印工作内容输出精度7和1,以外均打印工作内容输出精度0。(Note:Case语句往往会选用于壮态机中壮态的辨别)



Case语句特别留意点:


必需有default语句,因此会出现锁存器。


2.1.2 模仿模快



2.2 状态机


是由于FPGA内部人员语句块还是并行传输正常运行的,我就们都希望FPGA依照规定顺寻施行我们都大家的语句时,就会变需要情况机。


接着事件是的使用环境机虚拟的一简洁的自功售货机,该售货机中的产品 2.5 元件,老是投币既能开始 1 元,怎么样才能开始 0.5 元,当开始 3 元时,应该确定找零。


2.2.1 情形图



2.2.2 可结合模块电源(2段式的情形机)



2.2.3 仿真模块



2.2.4 仿真脚本


防真游戏按键小精灵都就可以省掉手动使用modelsimpc软件图像网站的方法步骤之一,操作游戏按键小精灵,modelsim都就可以跟据游戏按键小精灵命令行自行操作有撰写事情分类目录,编译文翻译件,通电防真等方法步骤之一,以內是本例中的防真游戏按键小精灵。



模拟按键精灵代码编辑好后,只需要进到模拟软文(本例选择的是modelsim),改动现今路线到按键精灵代码保管的路线,第三在modelsimps命令行设置 do  [按键精灵代码文件资料名] 就行了。



模型制作数据:



2.2.5 上板测试


上板各种检验对之前的水平第一次做必要修改更便捷检测結果,发送和读取对应实用的模块键和LED灯珠,各种检验版实用的是Anlogic的EF3L40CG332B_DEV,建立的模块如下所示:


① 在开发技术板上搞定自動售货机的实验室,投币的拉伸动作可以通过组合键完成, 当按1次组合键(轻按到抬起算1次),计入投币1次。


② 按纽有两大,按压各分为代替 5 毛和 1 元,可乐和雪碧租价 2.5 元。


③ 当成本总标准为 5 毛时, led 灯亮一款 ,成本总标准为 1 元时, led 灯亮这两个, 成本总标准为 1.5 元时, led 灯亮三大, 成本总标准为 2 元时, led 亮五个, 用异向水流帐灯功能担任出雪碧从而不找零的情形,用双相水流帐灯功能担任既出雪碧又找零的情形。水流帐灯连续十秒后熄火,的情形回答一开始的情形。


全新制定情况图有以下:



二维码具体情况见施工fsm_key,课堂小红书笔记就不再赘述,我院课堂小红书笔记具体登记介绍顶面摸块和例化的相应的小知识结构图:


工程项目根目录方式已知:



各传感器区间内的相互影响是:


第一层程序是fsm.v,在fsm.v中启用了能力电源版块led_water_single,led_Water_double和key_debounce,这两个能力电源版块的能力都是单线瀑布账单进账灯,双轨瀑布账单进账灯和按纽消抖。想在第一层程序中启用相当于的能力电源版块必须在第一层程序中对合理的能力电源版块通过例化,以单线瀑布账单进账灯概述。


正向银行流水灯的声明公告下述:



(具体的技能推动代码怎么用略,知悉必须 ,请进入www.fortune-co.com留言板)



这么在fsm.v中例化方法步骤下面的:



括号外的4g卫星数据数据是相关联的声明范文4g卫星数据数据;括号内的4g卫星数据数据是fsm电源模块中传播的4g卫星数据数据,该4g卫星数据数据英文名称可以自构成。


整体的工作的方框下述:(由本进行实验就没有另一方面写一款总的TOP文件资料,而将例化和睡眠情况机移动信号正确处理都放置于了fsm组件中,如此top层和睡眠情况机组件都标识的是fsm)


在这其中key05,key10,就会从外部环境对接使用的预警,led[7:0]即伤害预警。对接使用预警我们大家要放到相当于的开关,还可以基准EF3L40CG332B_DEV的基本原理图:



SW2和SW3相匹配的FPGA的管脚区分是R19和R20,理解可见,八led的相匹配脚,并标出相对应的的管脚约束力文书:



管脚进行约束系统相关文件写完后,在可总合方案高层系统相关文件中的手机手机输入打出移动信号还是会代表到相对应的数学手机手机输入打出,也可安全使用图形商标手机网页如何设置。


进行后编译下载下载到板子上检测情况。


在这次的科学试验的过程中 中也时有发生好几回个java开发误区现象,刚撰写完上板软件测试时看到数据和预想的有差异性,关键错属于设置3元迈入双边工资银行瀑布账单水流灯的心态时,双边工资银行瀑布账单水流灯正面工资银行瀑布账单水流没问题,当反方向工资银行瀑布账单水流时,在倒数第五个灯会卡住,而后反复性亮灭倒数一些个灯,那就没法达成反方向工资银行瀑布账单水流。


鉴于第一个次领域留水是一般的,如此估测是在单向留水时有一个件鉴别误区因此单向留水不了一般工作,进来到led_water_double引擎关羽单向留水灯的运作引擎,经机检出现 是设定反过来标准的之时 鉴别能力写弄错。



理解必要条件应有是led == 8’b1111_1110,修改后,实验所症状具备期望值规范。


1

END

1


往上是FPGA杂记基本篇的1、一部分,因的经典文章通篇所限,本文作者先转发到这边。之后都会有比较多源于FPGA的设计方案的经典文章,还请充满期待……




点击反馈您的需求,助力我们打造更优质的FPGA产品!

订阅信息
a1_icon02.svg
download.jpg

订阅

地区划分

我已仔细阅读并同意隐私声明