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

东晓南门户网站制作好看网站的浏览器

东晓南门户网站制作,好看网站的浏览器,长春网站制作可选吉网传媒好,阿坝住房和城乡建设厅网站这一套【Verilog 工程规范编码模板】,适合写清晰、可维护、可综合的 RTL 代码,适用于 FPGA/ASIC 开发: 📘 Verilog 工程级编码规范模板 1️⃣ 模块结构规范 module my_module #(parameter WIDTH 8 // 模块参数 )(input wire c…

这一套【Verilog 工程规范编码模板】,适合写清晰、可维护、可综合的 RTL 代码,适用于 FPGA/ASIC 开发:


📘 Verilog 工程级编码规范模板


1️⃣ 模块结构规范

module my_module #(parameter WIDTH = 8  // 模块参数
)(input  wire clk,input  wire rst_n,input  wire [WIDTH-1:0] data_in,output reg  [WIDTH-1:0] data_out
);// ============ 内部信号定义 ============
reg [WIDTH-1:0] data_buf;// ============ 组合逻辑块 ============
always @(*) begin// 默认值(避免综合 latch)data_buf = 0;if (/* condition */)data_buf = data_in + 1;
end// ============ 时序逻辑块 ============
always @(posedge clk or negedge rst_n) beginif (!rst_n)data_out <= 0;elsedata_out <= data_buf;
endendmodule

2️⃣ 时序逻辑模板(寄存器写)

always @(posedge clk or negedge rst_n) beginif (!rst_n)q <= 0;else if (en)q <= d;
end

3️⃣ 组合逻辑模板(纯组合,用于中间变量)

always @(*) begincase (sel)2'b00: out = a;2'b01: out = b;2'b10: out = c;default: out = 0;endcase
end

4️⃣ 状态机结构模板(推荐三段式)

// 状态编码
localparam IDLE  = 2'd0,LOAD  = 2'd1,WORK  = 2'd2,DONE  = 2'd3;reg [1:0] state, state_next;// 状态跳转(组合)
always @(*) begincase (state)IDLE:  state_next = start ? LOAD : IDLE;LOAD:  state_next = WORK;WORK:  state_next = done ? DONE : WORK;DONE:  state_next = IDLE;default: state_next = IDLE;endcase
end// 状态寄存器(时序)
always @(posedge clk or negedge rst_n) beginif (!rst_n)state <= IDLE;elsestate <= state_next;
end// 输出逻辑(组合)
always @(*) begincase (state)IDLE:  do_something = 0;LOAD:  do_something = 1;WORK:  do_something = 1;DONE:  do_something = 0;default: do_something = 0;endcase
end

5️⃣ 总线打拍与同步模板

// 1拍打拍
reg [7:0] signal_d1;
always @(posedge clk or negedge rst_n) beginif (!rst_n)signal_d1 <= 0;elsesignal_d1 <= signal_in;
end

6️⃣ 通用模块命名规范(推荐)

类型前缀建议说明
输入信号in_如:in_data, in_valid
输出信号out_如:out_data, out_ready
中间寄存器_reg如:cnt_reg, state_reg
状态机状态全大写如:IDLE, WAIT, DONE
参数全大写如:DATA_WIDTH, BUF_DEPTH

✅ 编码风格建议

  • 每个 always 只负责一类功能:组合逻辑 or 时序逻辑

  • 不要在组合逻辑中写 <='(非阻塞赋值)

  • 多个 if-else 控制一个变量时,一定要确保是互斥的,或统一组合后赋值

  • 尽量避免推测 latch(即组合逻辑中没有默认值)

  • 状态机推荐三段式写法(状态跳转 + 状态寄存器 + 输出逻辑分离)


http://www.dtcms.com/wzjs/543119.html

相关文章:

  • 网站全站开发需要学什么教育集团网站建设
  • 免费建站的平台江西做网站优化好的
  • 免费收录网站推广网站开发案例详解pdf
  • 百度如何建设自己的网站wordpress调用 自定义php代码
  • 网站维保方法0点开服的网页游戏
  • 福建省建设工程信息网站网站内容设计
  • 碑林网站制作电商系统源码哪家好公司
  • 做一家网站费用wordpress前面增加new
  • 自动做简历的网站新产品推广策划方案
  • 网站开发工具总结wordpress 根据id获取分类名称
  • 2018网站建设西安市高新区建设规划局网站
  • 阿里巴巴的网站是自己做的吗大神部落 网站建设
  • 网站网页设计工作内容山东东营市属于几线城市
  • 网站建设方案书 人员安排重庆公共信息交易资源网
  • 邯郸移动网站建设费用怎么看网站域名
  • 阿里指数官方网站聊城的网站制作公司
  • 凡科网站怎么关闭建设中平面设计接私活一般多少钱
  • 网站域名备案主机名seo怎样新建网站
  • 达人设计网官方网站互联网创业项目怎么推广
  • 外贸网站推广方法之一网站模板内容怎么添加图片
  • 天津建设工程信息网网站首页wordpress侧边
  • wordpress playyo快速排名优化公司
  • wordpress 上传大文件合肥网站优化 新浪博客
  • 珠海 电商 网站建设福田公司门口
  • 许昌住房和城乡建设部网站中国建设银行官方网站下载
  • 自动化毕设题目网站开发宁波无痛人流医院哪家好
  • 艺术学校网站模板有没有什么做高数的网站
  • 网站排名大全wordpress优化 春哥
  • 浙江建设职业技术学院塘栖校区网站山西省智慧建筑信息平台
  • 太原流量大的网站找设计公司上哪个网站