內(nèi)含CalmRISC的8位單片機S3CK215及其應(yīng)用
1 概述
S3CK215是韓國三星公司生產(chǎn)的一種高性能微控制器,它采用三星公司新開發(fā)的8-bit CPU╟╟CalmRISC作為核心。該芯片不僅包括有ROM、RAM、定時器、I/O接口以及中斷控制單元等模塊,還整合了LCD控制驅(qū)動器、放大器以及A/D、D/A轉(zhuǎn)換器等非常有用的功能單元(比如LCD控制驅(qū)動器可以直接驅(qū)動高達120個點的LCD顯示屏)。由于這些單元拓展了該單片機的功能,因此,使用該單片機設(shè)計電路時,只需附加簡單的外部電路就可以構(gòu)成一個完整的單片機系統(tǒng),而且功耗低、體積小、系統(tǒng)可靠性高。此外,三星公司還為S3CK215的應(yīng)用提供了一套有效的開發(fā)工具和在線仿真器,從而方便了設(shè)計者基于S3CK215的軟硬件設(shè)計。
本文介紹了使用S3CK215設(shè)計的校音器電路。該校音器在采集到樂器所產(chǎn)生的聲音信號后,可計算出聲音頻率,同時顯示其與理想頻率的偏差,然后以此作為樂器調(diào)整的依據(jù),使之發(fā)出標準聲音。
2?。樱常茫耍玻保到榻B
圖1是S3CK215的內(nèi)部結(jié)構(gòu)模塊圖。從圖1可以看出,該單片機具有以下特點:
●使用CalmRISC作為中央處理單元;
●內(nèi)含八位乘法器;
●具有深度達16級的硬件堆棧,每級寬度為16-bit;
●帶有LCD驅(qū)動控制器;
●具有10-bit A/D轉(zhuǎn)換器和9-bit D/A轉(zhuǎn)換器;
●內(nèi)含兩個運算放大器。
2.1 CalmRISC處理器
CalmRISC是三星公司新開發(fā)的一種8-bit低功耗RISC微處理器,它滿足哈佛體系結(jié)構(gòu),具有獨立的程序存儲器和數(shù)據(jù)存儲器,其指令和數(shù)據(jù)可以通過各自的路徑同時進行訪問。
CalmRISC的內(nèi)部結(jié)構(gòu)包括一個8-bit ALU、16個通用寄存器、11個專用寄存器、16級硬件堆棧以及程序存儲器地址生成單元以及數(shù)據(jù)存儲器地址生成單元等。其中16個通用寄存器分為四組(Bank 0-Bank 3),每組包括四個8-bit寄存器(R0, R1, R2, R3)。而專用寄存器包括狀態(tài)寄存器、鏈接寄存器以及數(shù)據(jù)存儲器索引寄存器。CalmRISC中的16級硬件堆棧除了可以作為數(shù)據(jù)暫存空間外,還可以用來進行低功耗堆棧操作。
CalmRISC具有三級流水線。圖2所示是Calm-RISC處理器的三級流水線示意圖。對CalmRISC的操作可采用寄存器-存儲器指令集方式。操作時首先取指令(IF)并將程序計數(shù)器(PC)指向指令地址,接著將指令放入指令寄存器(IR),然后進行指令譯碼和數(shù)據(jù)存儲器讀?。ǎ桑模停牛停瑫r執(zhí)行指令和回寫(EXE/WB),最后由ALU來執(zhí)行指令并將指令執(zhí)行結(jié)果寫入目標寄存器。
CalmRISC采用流水線工作的示意圖如圖3所示。圖中,前一指令獲取完畢后馬上可以進行下一指令的取指操作,而不必等到前一指令執(zhí)行完畢。實際上,大多數(shù)CalmRISC指令都是單字節(jié)指令,取指操作只需一個時鐘周期即可完成;但是 “CALL”和“JP”等跳轉(zhuǎn)指令是雙字節(jié)指令,它們的取指操作需要兩個時鐘周期。
2.2 8位乘法器
S3CK215整合了一個8-bit乘法器,通過設(shè)置乘法器控制寄存器(MULCON)可支持8-bit符號數(shù)或無符號數(shù)的乘法運算,而且只需兩個時鐘周期即可輸出運算結(jié)果。它的組成包括操作數(shù)寄存器(MXINPMYINP)、結(jié)果寄存器(MRHMRL)和8-bit乘法運算器。調(diào)用乘法器實現(xiàn)乘法的程序段如下:
LD R0,#01H
LD MULCON,RO ; Unsigned by unsigned multiplication
LD R0,#32H
LD R1,#0CEH
LD MXINP,R0
LD MYINP,R1 ;Multiply automatically after loading MXINPMYINP
NOP
NOP
LD R2,MRH ;The multiplication is finished after 2 cycles
LD R3,MRL ;MRH/MRL=28H/3CH
評論