数字电路设计盲点实例与对策分析
【利用CPLD设计的Port执行位操作指令时,机器发生误动作】
※现象
利用PLD设计如图11-1所示的Micro Computer外部扩充I/O Port,PLD的内部电路是用VHDL编写,List11-1是部份程序摘要,图11-2是是根据该程序合成的电路,Output Port是用Clock同步方式设计,相当于第6行到第6行的Process叙述,同步Clock主要是应用于CPU周边电路的Output System,因此信号的名称又称为CLK。该Output Port被设计成可作Lead Back,相当于第20行到第41行的Process叙述。
上述设计主要是针对机器的控制器,因此输出入信号的名称直接使用机器的驱动器(Actuator)名称,例如第9行的DCM1CW_fb信号名称,是使DC马达初始朝时钟方向(CW)旋转的信号。不过实际上电路动作时,DC马达初始动作却经常发生问题(Trouble)。
※原因分析
主要原因是利用CPLD制成的Lead Back电路的程序叙述有瑕疵(Bug)。具体而言在第9行Output Port的Data位0,分配有DCM1CW_fb信号,然而在第31行Input Port的的DATA的位0,却又分配DCM1CCW_fb信号,也就是说Output Port与Inp ut Port的位0与位1信号名称分配不一致,所以当MicroComputer执行位操作指令时便发生问题,因为位操作指令会从指定的地址(Address)将数据读入Resistor,接着针对Resistor的数据将指定的位Set至指定值,之后便执行「将Resistor的数据写入原地址」的动作,亦即进行与Memory的位操作相同的Lead Modify Light动作 。
※对策
最根本的对策是修改Source Code,将第31行的DCM1CW_fb与DCM1CCW_fb两者对调使动作恢复正常。为了防范未然HDL(Hardware Description Language)的叙述方式尽可能单纯化,具体实例如下:
信号名称不要太复杂
以上述的例子而言尽量避免使用与机器组件相关的名称,改用地址与位等单纯的信号名称。
尽量避免将std_logic连结代入std_logic_vector,不得以时则用元方式替代,就可避免发生上述的错误。
【Clock同步式的Latch经常发生怪异值,如何Latch】
※现象
List12-1是利用ABEL设计PLD的程序产生Clock同步式Latch的实例,理论上根据该List应该可以合成如图12-1所示的电路,然而实际上电路却不动作。
※原因分析
List12-1的叙述中第19行代入式右边Q0信号名称却未添加扩充子,造成未明示到底是Register Feed Back或是Pin Feed Back的困扰。由于程序编写器(Compi le)解释成Pin Feed Back,依此合成图12-1的电路是造成问题的主要原因。List12-2是Therinks公司的WebPackISE,经过程序编写(Compile)时的部份Report File,由该List可知Q0.D的代入式右边使用Q0.PIN。在图12-2的电路为0(L Level)时,Resistor Feed Back与Pin Feed Back的值不一致,因此即使LE变成1(H Level),Resistor的值无法被Latch,因为随着与Q0连接的外部电路电压Level变化,Resistor的值也跟着改变。
List12-2 Therinks公司的WebPackISE经过
※对策
正确的叙述方法如List12-3所示,添加扩充子明示Resistor Feed Back,具体内容是在第19行代入式右边Q0的信号名称,「.fb」就是该信号名称。图12-2是根据该程序合成的电路,List12-4是用WebPackISE将List12-3 Compile时的部份Re port File,由该List可知Q0.D的代入式右边使用Q0.Q,所谓的.Q是明示Resistor Feed Back的扩充子,这种方式经常出现在ABEL的Source Code。.Q与.fb最大差异是.Q祇能用于Resistor Output的Feed Back,而.fb却可用Combina tion Output的Feed Back,所谓的Combination是指组合理论电路的输(Output),例如List12-1的第12行的istype’reg’虽然是表示Resistor Output,然而Combination Output的场合却变成istype’com’
图片新闻
最新活动更多
-
11月28日立即报名>>> 2024工程师系列—工业电子技术在线会议
-
11月29日立即预约>> 【上海线下】设计,易如反掌—Creo 11发布巡展
-
11月30日立即试用>> 【有奖试用】爱德克IDEC-九大王牌安全产品
-
即日-12.5立即观看>> 松下新能源中国布局:锂一次电池新品介绍
-
12月19日立即报名>> 【线下会议】OFweek 2024(第九届)物联网产业大会
-
即日-12.26火热报名中>> OFweek2024中国智造CIO在线峰会
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论