随笔分类 -  FPGA related notes

摘要:初学verilog的刚知道还有可综合不可综合的时候,觉得可综合的verilog真是太简单了,用到的语法只有一点点,现在看看实在是孤陋寡闻了。今天了解到的新的东西总结一下:verilog-2001的RTL可综合标准可以参考文档 IEEE P1364.1 / D1.6 Draft Standard for Verilog(R) Register Transfer Level Synthesis,这个文档规定了综合工具对语法的支持;线网类型除了wire之外还有tri,tri0,tri1,wand,wor,triand,trior,suppy0,supply1,其中:tri,tri0,tri1表示.. 阅读全文
posted @ 2013-05-18 10:06 自动控制原理 阅读(8317) 评论(1) 推荐(1)
摘要:1 module bnbasm (/*AUTOARG*/ 2 // Outputs 3 q1, q2, 4 // Inputs 5 clk_osc 6 ) ; 7 input clk_osc; 8 output [7:0] q1,q2; 9 10 reg [7:0] q1,q2;11 always @(posedge clk_osc)12 begin13 q1=q1+8'd1;14 q2=q1;15 end16 endmodule //View Code 这段代码综合出的RTL模型为:将过程块中的... 阅读全文
posted @ 2013-05-14 21:10 自动控制原理 阅读(4293) 评论(1) 推荐(0)
摘要:verilog是可读性相当差的一门语言,其实这个不是语言的原因,而是天生的工种的原因。描述数字逻辑嘛,东西一多就显的乱得很,变量信号的耦合很严重,找一个信号的驱动源经常是需要跳转查找好几个文件。因此,提高verilog代码的可读性很有必要。 我在这个方面的思路就是尽量借鉴C语言的写法。begin-end就是大括号{},always下面必定要一个,每个if-else还有case的selector都带着。还有就是宏定义的运用,像是简单的1位的1和0都定义成了:View Code 1 `define ON 1'b12 `define OFF 1'b03 `define HIGH 1& 阅读全文
posted @ 2013-04-12 21:52 自动控制原理 阅读(2995) 评论(0) 推荐(0)
摘要:今天才仔细的看了看quartus里面的template里面的内容,很有收获啊。。。// Quartus II Verilog Template// Signed multiply with input and output registersmodule signed_multiply_with_input_and_output_registers#(parameter WIDTH=8)(input clk, inputsigned[WIDTH-1:0] dataa, inputsigned[WIDTH-1:0] datab, output regsigned[2*WIDTH-1:0] d.. 阅读全文
posted @ 2013-04-03 18:37 自动控制原理 阅读(1658) 评论(0) 推荐(0)