微程序与嵌入式系统的连接

Connection between microprogramming and embedded systems

微程序嵌入式系统有什么联系?

微程序机器语言吗?

微程序微码一样?

嵌入式系统是否仅使用微编程制造?

或者这不是使用微程序的嵌入式系统的排他性吗?

如果可能,请举例说明。谢谢!

Microprogramming / microcoding 是处理器的一种实现技术——因此可以追溯到很久以前。

一个处理器执行一个指令集;使用这些指令的程序由编译器或汇编语言程序员生成并存储在程序文件中,然后加载到内存中以执行程序。

微编码处理器就像拥有另一个不同的处理器中的处理器,用于解释程序的指令流(机器语言序列)。这个处理器中的处理器有它自己的指令集和它自己的程序。与外部可见的指令集(可以加载&运行任何程序)不同,处理器内部的处理器一般只有运行一个专用程序(指令集解释器),它存储在一个ROM中(或可重写闪存)在处理器内部。

(在某些此类系统中,处理器中的处理器具有非常宽的指令(如 horizontal microcode 中所示),并且对于常规程序的一般使用而言不切实际(关于代码大小)。)


What is the connection between microprogramming and embedded systems?

微编码和嵌入式之间没有特定的关系。 Yes/no两者都可以混用。


Is microprogramming a machine language?

是的,我会说它是,但操作系统和用户程序通常无法访问它。


当几乎所有指令都在多个周期中执行时,微编码特别流行。后来的技术取消了微代码机器的间接性,转而支持直接硬连线执行,采用单周期方法。这个publication sheds some light on some of the thinking of the day during the transition of the state of the art from microcoding to hard wiring.  See also IBM 801.

现在大多数处理器都不是微程序;然而,x86 处理器应用的非常先进的技术可能会到处模仿微编程技术。


嵌入式系统只是在不被视为 "computers" 的设备中使用的处理器,例如,恒温器、微波炉或汽车(可能有许多嵌入式系统)。这里的考虑是这些系统是专用的:它们倾向于 运行 单个程序(而不是 运行 一个能够 运行 用户指示的任何程序的操作系统);它们具有低功耗要求、断开连接要求(与用户断开连接 terminal/screen/keyboard,可能与网络断开连接等)。尽管如此,嵌入式系统仍在变得更加强大。