【正文】
even the simplest calculations and most basic register operations. Moreover, the clock rates of these parts are not substantially faster than Atmel’s and can’t make up for inherently inefficient execution. In short, AVR offers 16bit performance at an 8bit price. For users who want onchip memory but don’t need 16bit data types or binary patibility with a previous generation, Atmel offers better price/performance for designers willing to let go of the older families’ apron strings. 微處理器報告 吉姆﹒泰羅 隨著所有技術(shù)滲入到日用品中, Atmel 已經(jīng)把精簡指令集計算機設(shè)計原理變成 8 位微控制器。這種競賽也來自于微型芯片的 PIC,一種在過去幾年里迅速發(fā)展起來的更時髦的設(shè)計方法。 RISC 和微控制器思想的混合設(shè)計 CPU 與大多數(shù) RISC 處理器類似,但是它有更小的寄存器。任意寄存器都能存儲地址或數(shù)據(jù)。這種模式在 X 指令不可用,它的工作代碼被用作 LDI 指令(快速連續(xù)下載)。 CPU 不能達(dá)到所有目的,但是它不僅能夠找回源操作數(shù)、執(zhí)行指令,而且可以在單一時鐘周期中存儲結(jié)果。 盡可能規(guī)則的指令系統(tǒng) 這些緊湊的指令造成了一些必要的壓力,首先就是影響即時值。 這里也有許多條件轉(zhuǎn)移指令,有 7 位偏移,指令能在任意方向上執(zhí)行偏轉(zhuǎn)操作。同時,它們也能在一串操作中跳過單一算法或邏輯操作,這種條件操作與 ARM 的方法有些類似。 Atmel 希望在在未來的 AVR 芯片上生產(chǎn)時鐘速度增加、信號處理任務(wù)簡單化的乘法器。然而,為了深入運用,這也許是正確的選擇。 SBR 和 CBR,分別又稱為 ORI 和 ANDI,能設(shè)置或清除多位。 最初的 1200 僅有 1K 的快閃存儲器,沒有靜態(tài)存儲器和外部設(shè)備以及一個受限的指令系統(tǒng)。在 1000 個單元中, 20 片 90S1200 只賣 美元。只有在 40 片包中,芯片才能聯(lián)合它們的地址和數(shù)據(jù)與外部存儲器結(jié)合。 1200 只有 24 ,如圖 2 照片所示。 Atmel 的新一代 CPU 非常吸引那些試圖把微控制器從 32 位或 16 位降低以及習(xí)慣靈活寄存器組的程序員們。大寄存器減小了對內(nèi)存的依賴,這提高了速度,降低了數(shù)據(jù)存儲要求。 AVR并不是純粹的 RISC— 一些指令比另外的稍長 — 也不是有大寄存器文件的8 位微控制器。盡管 AVR 不能立刻推翻這種趨勢,但是它仍然有很多優(yōu)勢。 8 位應(yīng)用者也可以找到更快的速度。 HC12, 8051XA 和 251 是帶有 16 位內(nèi)部數(shù)據(jù)路徑和 16 位算法操作的更精確的 16 位設(shè)計,但是對于最簡單的計算和最基本的寄存器操作,它們?nèi)匀恍枰?3個或更多時鐘。 。 簡而言之, AVR 在 8 位價格上提供了 16 位性能。不僅如此, Intel 通過完成8051 and 和 251 的二進(jìn)制兼容,為我們提供了更流暢的提升路徑。在 20 兆赫茲,它的最高時鐘速度很容易就超過同系的其他芯片,甚至可以加倍。但是在每個指令的 515 時鐘, Z8 比不上 AVR 的速度。它的 CPI 指令避免了在 6805 和 PIC 上相對笨拙的操作:裝載、減法以及校驗。 例如, 8051, 6805 和 PIC 都只有一塊電池, 68HC11 和 HC12頁僅有兩個。 RISC 技術(shù)提高了編碼速度 有時 8 位處理機很難讓人滿意,盡管 Atmel 的 AVR 設(shè)計與十年前最初來自大系統(tǒng)的 RISC 設(shè)備不同。這使用一個相同的存儲過程。 在經(jīng)過激勵、擱淺和晶體連接以后,只有 4 片對于輸入 /輸出設(shè)備是可用的。除非程序員可以通過寄存器組得到,否則這會大大減慢運行速度。 Atmel 發(fā)行的 AVR 生產(chǎn)線包括四個基本芯片: 90S1200, 2313,4414 和 8515。 SEx/CLx 不用寄存器。 對于大多數(shù)微控制器, AVR 有許多二進(jìn)制選擇 ,包括 16 個在位寄存器中這支或刪除的外在指令。 MUL(相乘)任意兩個 8 位寄存器,這個 16 位的結(jié)果存放在 R0 和 R1 中。 AVR 還有令人感興趣的 “跳躍”指令( SBRC, SBRS, SBIC 和 SBIS),如果在任意寄存器里設(shè)置得話,它們能漏過下一個指令。 ADIW 和 SBIW 指令(文字及時增加 /刪除)限制更多,它們只能在最后 8 個寄存器里使用,即 R24 到 R31。 AVR 指令的突出部分就是長 16 位,它只存在 4 個 32 位指令,允許 16 位絕對尋址。芯片的位寄存器包括溢出,攜帶,簽名和其他標(biāo)記,它與其他內(nèi)部寄存器都為內(nèi)存印象圖。與 X、 Y、 Z 一起,這三種寄存器被用來做任意下載或存儲操作。 CPU 芯片的發(fā)展仍然出現(xiàn)在挪威,此時在 Atmel 的圣何塞(加利福尼亞州)是以生產(chǎn)存儲器和外部設(shè)備為中心的。 AVR 是來自 Atmel 的第一個內(nèi)部 CPU 設(shè)計, Atmel 是一家以生產(chǎn)閃光存儲器和 E2PROM產(chǎn)品著名的十億資產(chǎn)的公司。 Atmel 也承諾了比相應(yīng) 8 位微控制器更好的集成度和更低成本。 the 68HC11 and ’HC12 have just two. This makes AVR easier to program at the assembly level and easier to optimize with a piler. The big register set reduces dependence on memory, which improves speed and shrinks datastorage requirements. Counterintuitively, AVR’s RISClike instruction set also helps improve its code density over that of other 8bitters, according to Atmel. Its CPI (pare immediate) instruction avoids the relatively awkward construct of loading, subtracting, and checking flags used on the 6805 and PIC. Adding two numbers on the 8051, 6805, or PIC usually involves shuffling both operands through the accumulator and storing the result。 t