《FPGA设计实例》PPT课件

《FPGA设计实例》PPT课件

ID:36616889

大小:215.10 KB

页数:40页

时间:2019-05-09

《FPGA设计实例》PPT课件_第1页
《FPGA设计实例》PPT课件_第2页
《FPGA设计实例》PPT课件_第3页
《FPGA设计实例》PPT课件_第4页
《FPGA设计实例》PPT课件_第5页
资源描述:

《《FPGA设计实例》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、FPGA设计基础设计实例BCD码到余3码的转换电路BCD码和余3码之间有如下关系:-BCD码加3即为余3码。-余3码是一个自补码,即对于任意一个余3码a,存在另外一个a’,使得a+a’=9。电路设计要求:假设码流以串行流的形式进入转换电路,并以串行流的方式进行发送,BCD码的低位先进入本转换电路,余-3码的低位先发送序列BCD余3码000000011100010100200100101300110110401000111501011000601101001701111010810001011910011100BCD到余3码转换表并串转换电路___使用有限状态机/*

2、SIN_POUT_SHIFT*/moduleSIN_POUT_SHIFT(RSTB,IN,CLK,Q);inputRSTB,CLK,IN;output[3:0]Q;reg[3:0]Q;always@(posedgeCLKornegedgeRSTB)Q<=(!RSTB)?0:{Q,IN};endmodule常见的串并/并串转换/*PIN_SOUT_SHIFT*/modulePIN_SOUT_SHIFT(LOAD,IN,CLK,Q);inputLOAD,CLK;input[3:0]IN;output[3:0]Q;reg[3:0]Q;always@(posedgeCLK

3、orposedgeLOAD)if(LOAD)Q<=IN;elseQ<=Q<<1;endmodule把4位的并行数据转换为符合以下协议的串行数据流,数据流用scl和sda两条线传输,sclk为输入的时钟信号,data[3:0]为输入数据,d_en为数据输入的使能信号。设计要求:通信协议:scl为不断输出的时钟信号,如果scl为高电平时,sda由高变低,串行数据流开始。如果scl为高电平时,sda由低变高,串行数据结束。sda信号的串行数据位必须在scl为低电平时变化,若变为高则为1,否则为零。moduleptos(d_en,data,scl,sclk,sda,rst

4、);inputd_en,rst;wired_en;input[3:0]data;inputsclk;wiresclk;outputscl;outputsda;wiresda;regscl,link_sda,sdabuf;reg[3:0]databuf;reg[7:0]state;assignsda=link_sda?sdabuf:1'bz;parameterready=8'b00000001,start=8'b00000010,bit1=8'b00000100,bit2=8'b00001000,bit3=8'b00010000,bit4=8'b00100000,b

5、it5=8'b01000000,stop=8'b10000000;always@(posedgesclkornegedgerst)beginif(!rst)scl<=1;elsescl<=~scl;endalways@(posedged_en)begindatabuf<=data;end//FSMalways@(negedgesclkornegedgerst)if(!rst)beginlink_sda<=0;state<=ready;sdabuf<=1;endelsebegincase(state)ready:if(d_en)beginlink_sda<=1;st

6、ate<=start;endelsebeginlink_sda<=0;state<=ready;endstart:if(scl&&d_en)beginsdabuf<=0;state<=bit1;endelsestate<=start;bit1:if(!scl)beginsdabuf<=databuf[3];state<=bit2;endelsestate<=bit1;bit2:if(!scl)beginsdabuf<=databuf[2];state<=bit3;endelsestate<=bit2;bit3:if(!scl)beginsdabuf<=databu

7、f[1];state<=bit4;endelsestate<=bit3;bit4:if(!scl)beginsdabuf<=databuf[0];state<=bit5;endelsestate<=bit4;bit5:if(!scl)beginsdabuf<=0;state<=stop;endelsestate<=bit5;stop:if(scl)beginsdabuf<=1;state<=ready;endelsestate<=stop;default:beginlink_sda<=0;sdabuf<=1;state<=ready;endendcaseenden

8、dmodu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。