当前位置: 首页 > wzjs >正文

宜昌市网站建设工装公司联系方式

宜昌市网站建设,工装公司联系方式,wordpress站内信,360免费建站可以免费又永久吗文章目录 一、通过VScode编写Verilog代码二、模块化编程三、代码示例 一、通过VScode编写Verilog代码 1、下载Vscode 2、下载相关插件 搜索Verilog就会弹出有如图所示的插件,下载并安装 3、创建Quartus项目 4、创建完成后点击Tools,选择Options 然后在…

文章目录

  • 一、通过VScode编写Verilog代码
  • 二、模块化编程
  • 三、代码示例

一、通过VScode编写Verilog代码

1、下载Vscode
2、下载相关插件
请添加图片描述
搜索Verilog就会弹出有如图所示的插件,下载并安装
3、创建Quartus项目
4、创建完成后点击Tools,选择Options
请添加图片描述
然后在如图所示中,选择VScode.exe所在路径,并在后面添加-r -g %f:%l
5、创建新的Verilog文件,然后会自动跳转VScode
请添加图片描述
6、在你项目路径下右键新建txt文件(文件名自己命名,不必要跟我一样),再把后缀改为.v
请添加图片描述
7、在VScode中点击FIle,然后点击openfIle,然后找到这个文件,打开
请添加图片描述
8、在这个文件里面编写Verilog代码,编写完成后ctrl+s保存,然后回到Quartus
9、右键点击Files,点击三个点,然后找到刚才的文件,添加,添加的文件会显示在下面,至于这里的文件为啥突然变名字了,后文会讲到
请添加图片描述
然后就可以在Quartus里面点击
请添加图片描述
到此为止,将VScode与Quartus结合就结束了

二、模块化编程

1、如图所示,分别有三个.v文件,就是分别三个模块
请添加图片描述
看着是不是有一种熟悉感,我的理解即是类似c语言那种函数调用,又类似C++的类封装,需要用的时候就拿出来用。
2、这里的m_design就是刚才的top,代表顶层模块,就是最主要的模块,另外两个模块就是分别实现其他功能的模块,当然可以有很多个次要模块。
3、需要注意的是顶层模块的模块名需要与工程名相同,但其他模块就没有要求
4、只需要重复上述创建模块的流程即可完成多模块的创建

三、代码示例

//顶层模块
module m_design(input  wire       clk,     input  wire       rst_n,   input  wire       key,     output wire [5:0] led      
);wire en_1hz;  clk_divider(.clk   (clk),.rst_n (rst_n),.en    (en_1hz)
);led_controller(.clk   (clk),.rst_n (rst_n),.en    (en_1hz),.key   (key),.led   (led)
);endmodule```//次要模块
module led_controller(input  wire       clk,input  wire       rst_n,input  wire       en,      input  wire       key,    output reg  [5:0] led
);reg [5:0] state;      
reg pause_flag;       
reg [2:0] key_sync;   
wire key_negedge;    always @(posedge clk or negedge rst_n) beginif (!rst_n) key_sync <= 3'b111;else key_sync <= {key_sync[1:0], key}; 
endassign key_negedge = (key_sync[2:1] == 2'b10);always @(posedge clk or negedge rst_n) beginif (!rst_n)pause_flag <= 0;else if (key_negedge)pause_flag <= ~pause_flag;
endalways @(posedge clk or negedge rst_n) beginif (!rst_n) beginstate <= 6'b000001; end else if (en && !pause_flag) beginstate <= {state[4:0], state[5]};  end
endalways @(posedge clk) beginled <= state;  
endendmodule//次要模块
module clk_divider(input  wire clk,   input  wire rst_n,output reg  en     
);parameter CLK_FREQ = 50_000_000; 
localparam CNT_MAX = CLK_FREQ - 1; reg [25:0] cnt; always @(posedge clk or negedge rst_n) beginif (!rst_n) begincnt <= 0;en  <= 0;end else beginif (cnt == CNT_MAX) begincnt <= 0;en  <= 1;    end else begincnt <= cnt + 1;en  <= 0;endend
endendmodule视频效果等审核过后更新
http://www.dtcms.com/wzjs/535481.html

相关文章:

  • 货代可以从哪些网站开发客户建筑图集网站07fs02图集
  • 中山华企立方网站建设公司个体工商户是否能够做网站
  • 高新企业建设网站价格医疗网站建站需求
  • 网站为什么做静态h5网站建设文章
  • 虚拟币交易网站开发省级网站建设标准
  • 网站建设网页的长宽网站大全软件
  • 网站上线如何做公司名字html购物网站源代码
  • 创意网站建设家装公司排名
  • 什么是网站被黑邢台企业网站建设公司
  • 做期货看资讯什么网站好wordpress 过滤
  • 家具建设网站做网赌需要在哪些网站投广告
  • 企业网站怎么做连接沧州国外网站建设
  • lamp网站开发黄金组...嘉兴备案网站建设
  • 网站建设免费教程网站子域名怎么设置
  • 物业公司网站建设方案邵阳建设银行网站
  • 电子商务专业网站长春网站公司有哪些内容
  • 网站制作流程分为哪七步网站域名到期怎么办
  • 房地产网站建设解决方案郑州 建站 公司
  • 南京网站建设优化求一个好看的网站
  • 海诚网站建设七台河市网站建设
  • 网站怎么做防360拦截年度网站建设工作总结
  • 个人网站制作过程网站建设中左对齐
  • 公司网站html模板南宁制作企业服装
  • 阿里云网站建设和部署框架网店代运营具体做什么
  • 番禺五屏网站建设全面依法治国建设法治中国
  • 广州外贸网站建设开发现在做百度推广有用吗
  • 广州网站设计首选刻互联网推广销售好做吗
  • 做商城类网站备案时需提供什么证件html网页设计大作业
  • 网站建设的整体设计流程wordpress邮件失败
  • 专业定制网站建设代理南京制作网站公司网站