各位好! DE2_70中的DE2_70_TV例程里的Sdram_Params一段程序如下:
parameter SDR_BL = (SC_PM == 1)? 3'b111 :
(SC_BL == 1)? 3'b000 :
(SC_BL == 2)? 3'b001 :
(SC_BL == 4)? 3'b010 :
3'b011 ;
parameter SDR_BT = 1'b0; // Sequential
// 1'b1: // Interteave
parameter SDR_CL = (SC_CL == 2)? 3'b10:
3'b11;
俺是初学者,看了N久都看不懂的...唉....请各位多多指点!!!先谢谢了......我的邮箱:lengyuye020202@yahoo.com.cn
DE2 好像是编写 FPGA 程序是用的,没有接触过。不过这个代码我根据其他语言的经验猜测应该是这个意思
parameter SDR_BL = (SC_PM == 1)? 3'b111 :
(SC_BL == 1)? 3'b000 :
(SC_BL == 2)? 3'b001 :
(SC_BL == 4)? 3'b010 :
3'b011 ;
相当于
if (SC_PM == 1)
{
SDR_BL = 3'b111;
}
else if (SC_BL == 1)
{
SDR_BL = 3b000;
}
else if (SC_BL == 2)
{
SDR_BL = 3b001;
}
else if (SC_BL == 4)
{
SDR_BL = 3'b010;
}
else
{
SDR_BL = 3'b011;
}
后面两段代码和上面类似,就不重复解释了。
parameter SDR_BL = (SC_PM == 1)? 3'b111 :
(SC_BL == 1)? 3'b000 :
(SC_BL == 2)? 3'b001 :
(SC_BL == 4)? 3'b010 : 3'b011 ;
这个的关系有点复杂:如果 SC_PM == 1 成立 SDR_BL = 3'b111 ;
否则 如果 SC_BL == 1成立SDR_BL = 3'b000;
否则 如果 SC_BL == 2成立SDR_BL = 3'b001;
否则 如果 SC_BL == 4成立SDR_BL = 3'b010;
否则 SDR_BL = 3'b011;
parameter SDR_BT = 1'b0; // Sequential 给SDR_BT 赋值1'b0
parameter SDR_CL = (SC_CL == 2)? 3'b10:3'b11; 如果SC_CL == 2成立,SDR_CL = 3'b10,否则SDR_CL =3'b11