请大家帮忙解决,VHDL 无限循环部分编译通不过!有电路图--该贴在别处无人回答,所以转
1http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_215635.JPG希望VHDL 上电不断输出三个不同的方波:ADcA,ADcB,ADcC,经图中的3位D/A转换(用多路复用开关芯片4053做的),最终由out端输出模拟三角波(因为不连续,所以实际形状大约是"阶梯状").
因此,我想用quartusII编译一个无限循环程序,写入altera的CPLD芯片epm7064,在循环体内使ADcA,ADcB,ADcC三个序列正序输出后再倒序输出.其他语句已通过,但这几条总是出错:
PROCESS
BEGIN
WHILE(1)
LOOP
--这里放置使ADcA,ADcB,ADcC三个序列对应变量的操作语句.
END LOOP;
END PROCESS;
请问是何问题?谢谢! VHDL里的LOOP相当于汇编的宏汇编,最终还是要展开.不是逻辑意义上的循环.
你的例子应该: 1. CPLD引入一个时钟.
2. 写一个状态机,在时钟驱动下输出3个序列. 谢谢qinxg
"1. CPLD引入一个时钟"
你是指这样吗?
PROCESS(puls)
BEGIN
WHILE(1)
LOOP
--这里放置使ADcA,ADcB,ADcC三个序列对应变量的操作语句.
END LOOP;
END PROCESS;
"2. 写一个状态机,在时钟驱动下输出3个序列."
你说的状态机是指"被语句描述的状态图"吗?
是对下面的这类图的VHDL语句描述吗? 对2楼补充:
是对下面的这类图的VHDL语句描述吗?
1http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_216098.gif
页:
[1]