"对现在的精简指令集单片机,虽然单clock,不过往往是把51的一条指令拆成几条来用"
标准51的单周期指令又是如何实现的呢?
仔细看看51的单字节单周期指令会发现其后6个时钟是浪费的,是无效的读操作,
就是通过对单字节单周期指令的扩大,把部分双字节的指令变成单周期.(这类双字
节指令包含一次取操作数的操作).
精简指令集单片机51的一条指令拆成几条来用,实际是缩短了指令的时钟数目,
总体来说来讲是效率并不见得降低,
相反硬件实现应该比较简单,内核小,高频率下的功耗容易得到控制,
实际产品的综合性能应该是设计和实际制造能力的叠加.
单看51的指令甚至是很完美,但是51容易实现单时钟周期指令吗?
不容易!
C8051F所谓单周期51实际是把51的指令周期增大了, 许多51的单周期指令到了C8051F那里,成了多周期. 只不过是寄存器之间的操作是单周期的,(这类似于精简指令) 别的都变成了多个周期指令, 甚至是累加器读写存储器指令都是两周期.
C8051F并不是"不失真的"单时钟周期51. |