2011年5月18日 星期三

MCU種類

MCU 架構介紹

文章出處:電子工程專輯

http://www.eettaiwan.com/ART_8800076794_876045_TA_4ff997e5.HTM

MCU 架構介紹


由於制程的改進,8位MCU與4位MCU價差相去無幾,8位已漸成為市場主流;針對4位MCU,大部份供貨商採接單生產,目前4位MCU大部份應用在計算器、車表、車用防盜裝置、呼叫器、無線電話、CD Player、LCD驅動控制器、LCD Game、儿童玩具、磅秤、充電器、胎壓計、溫濕度計、遙控器及傻瓜相機等;8位MCU大部份應用在電表、馬達控制器、電動玩具機、變頻式冷氣機、呼叫器、傳真機、來電辨識器(Caller ID)、電話錄音機、CRT Display、鍵盤及USB等;16位MCU大部份應用在行動電話、數位相機及攝錄放影機等;32位MCU大部份應用在Modem、GPS、PDA、HPC、STB、Hub、Bridge、Router、工作站、ISDN電話、激光列印機與彩色傳真機;64位MCU大部份應用在高階工作站、多媒體互動系統、高級電視游樂器(如SEGA的Dreamcast及Nintendo的GameBoy)及高級終端機等。



而在MCU開發方面,以架構而言,可分為兩大主流;RISC(如HOLTEK HT48XXX系列)與CISC(如華邦W78系列). RISC (Reduced Instruction Set Computer) 代表MCU的所有指令都是利用一些簡單的指令組成的,簡單的指令代表 MCU 的線路可以盡量做到最佳化,而提高執行速率,相對的使得一個指令所需的時間減到最短。HOLTEK的HT46XX(A/D MCU系列) HT47XX(R to F MCU系列) HT48XX(一般I/O MCU系列) HT49XX(LCD MCU系列) 便是採用 RISC 結構來設計。不管是 RISC 或是 CISC(Complex Instruction Set Computer),設計MCU的目的便是為人類服務的,對於 RISC 來說,因為指令集的精簡,所以許多工作都必須組合簡單的指令,而針對較複雜組合的工作便需要由『編譯程式』(compiler) 來執行,而 CISC MCU因為硬體所提供的指令集較多,所以許多工作都能夠以一個或是數個指令來代替,compiler 的工作因而減少許多。

以一個數值運算程式來說,使用 CISC 指令集的MCU運算對於一個積分表達式可能只需要十個機器指令,而 RISC MCU在執行相同的程式時,卻因為CPU 本身不提供浮點數乘法的指令,所以可能需要執行上百個機器指令 (但每一個指令可能只需要 CISC 指令十分之一的時間),而由程式語言轉換成機器指令的動作是由程式語言的 Compiler 來執行,所以在 RISC MCU的Compiler 便會較複雜 。因為同樣一個高級語言 A=B*C 的運算,在 RISC MCU轉換為機器指令可能有許多種組合,而每一種組合的『時間/空間』組合都不盡相同。

所以 RISC 與 CISC 的取舍之間,似乎也是MCU硬體架構與軟體(Compiler) 的平衡之爭,應該沒有絕對優勢的一方,只能說因應不同的需求而有不同的產品,例如工作單純的列印機核心 MCU,便適合使用效能穩定,但單位指令效率較佳的 RISC MCU.



微控制器(MCU)的基本架構



微控制器產品架構由早期以累積器為基礎的CPU,演進至現今含精簡指令(RISC)或同時含RISC、DSP如Motorola的68356,也有如DEC的SAIIC、與Hitachi的SH-DSP系列等之32位嵌入式微控制器 ,每一系列產品又因應不同的應用與介面需求 ,衍生出不同規格的產品 。微控制器產品以特性做為區分的標準與市場統計的依據 ,區分為4位 、8位 、以及16/32位等三大類 。各廠商依其不同功能組合 ,發展出系列性的微控制器產品 ,如NEC供應PD75X的4位系列 ,Toshiba供應47CXX的4位系列 、HOLTEK供應HT48CXX的8位系列 、及Intel之MCS-96的16位系列等。

以下就微控器的基本架構做介紹,如下先介紹MCU架構方塊圖。



MCU架構方塊圖






程式內存

程式內存(Program ROM)在微控制器中是只讀而不可寫入之記憶單元,此內存主要用來放置使用者所開發之程式,而其性質乃屬於不常更動或永不變動之資料,微控制器之動作便是依據儲存於此區之程式指令運作。在8位單晶片中常見的程式內存容量有0.5K、IK、2K、4K 及8K,而通常應用在微控制器的程式內存有下列幾種方式,見(表一):



表一


另外關於程式保密部份,不論是加密或保險絲燒斷保護 ,都是為了防止程式被未授權之使用者窺看、竊取(如反組譯程式 、修改內容 、盜取程式等)。程式保密這個功能選擇只在提供OTP、開窗型包裝、EEPROM 及 Flash ROM上使用,因為這些IC可借由燒錄器來回讀取程式代碼,在Mask版本則不需要進行程式保密的步驟 。



隨機存取內存



隨機存取內存(Random Access Memory;RAM),亦稱為讀/寫內存(Read-Write Memory),常是被用來暫時存放資料、或是程式執行存放資料的地方,用途相當廣泛。以HOLTEK 8位微控制器為例,其容量有64、96、160及224個Byte選擇。


累積器



累積器(Accumulator),是MCU的運作中樞 ,80%的指令都與累積器有關 ;資料可以被存放在累積器中,直到匯流排或其它單元準備接受它、或直到程式需要它為止 。



緩衝記憶體器

緩衝記憶體器(Register)是MCU內部用來暫時存放資料的地方,每個緩衝記憶體器的功能各不相同,但卻有一共同的特性,就是可以直接讀/寫,因其位於MCU的內部,故減少了一些不必要的等待及尋址時間,另外有些MCU的I/O Port,也以緩衝記憶體器型態來直接存取控制。


堆棧及堆棧指針


堆棧(Stack)及堆棧指針(Stack Pointer),堆棧就和盤子一樣,一個一個由下往上堆,而取出時則由上一個一個往下拿,不能由中間抽出,因此又稱為後進先出隊列(Last-In-First-Out Queues)」。功能如下;

一. 暫時存放PC(Program Count)的值,適用於"子程式呼叫”,或中斷發生時將PC的值暫時儲存起來;

二. 可視為緩衝記憶體器使用,以Push,Pop來完成;

三. 有些MCU其Stack Level數是固定的(如HOLTEK μC系列),有些則可自定。


運算邏輯單元



運算邏輯單元(Algorithm Logic Unit;ALU),其功能在於執行算術指令及邏輯判斷,除了產生結果之外,也產生相關的Flag(Zero、Carry、Borrow、Status),每一個MCU都不完全一樣,尤其是Carry Flag一定要查看指令解說表。

輸入/輸出(I/O Port)


在單晶片微電腦應用系統中,I/O的擴充不是目的,而是為了提供外部設備一個輸入/輸出的訊息通道,做為外界與MCU間的溝通管道。例如接鍵盤、顯示器、驅動開關控制或測量等;在I/O擴充時必須考慮與之相連接的週邊設備硬體電路特性,如:電位匹配、干擾抑制、驅動能力(如Source,Sink能力)等。

微控制器在I/O埠方面備有多種電路形式,其中有多埠可以經由軟體以位單位來設定輸出/入方向。各埠附加大電流、高耐壓的緩衝器,以直接驅動LED與高功率電晶體,以及做模擬訊號的輸入之用。


定時器、定時器


定時器(Time Counter)、定時器(Timer),由外加振蕩晶體,經除頻電路來提供MCU數種不同的時基(Time Base)。常應用於:

一. 時鐘之時基(如1sec、500ms、62.5ms、15.625ms等);

二. PWM(Pulse Width Modulation)之Time Base;

三. Key Scan;

四. LED Scan;

五. Frequency output;

六. Pulse Reading;

七. APO (Auto Power OFF)等。


計數器


計數器(Event Counter)專用於累計外部的事件個數,可能為Pulse或其它資料,也可用以產生正確的時間延遲。常應用於:

一、另一種Time Base,外加固定頻率;

二、計數器;

三、可規劃成另一種立即中斷輸入;

四、計速器(Speed Meter)、轉速表(Tachometer)。


中斷


中斷(Interrupt)用來處理立即事件、或列為優先處理之事件,負責時間計數器超時中斷、及外部事件產生中斷請求等工作。大部份微控制器的中斷處理系統是多層的,內設有中斷優先級電路,以決定先後順序。常應用於:


一、MCU呈被動Standby狀態(Halt-Stop),由外加信號來Wakeup;

二、需要立即處理(感應器、開關、警報器、電源故障預警器);

三、需要一個固定間隔來處理(Display ,Key Scan ,Read-Time Clock);


微控制器上的週邊資源


看了這麼多微控制器的的基本架構後,讓我們繼續來了解微控制器還可以加挂那些週邊資源,以擴充、延伸其功能。



串列輸出(Serial I/O)


微控制器內含Serial I/O是為了提供對外部週邊Device的通訊管道,各家種類不同,常見的有以下幾種:

◆UART(Universal Asynchronous Receiver Transmitter):Intel,Atmel;

◆USART(Universal Synchronous/Asynchronous Receiver

Transmitter ):Siemens;

◆SPI(Serial Peripheral Interface):Motorola;

◆SCI(Sertal Communications Interface):這是UART的加強版;

◆I2C bus(lnter Integrated Circuit bus):Philips;

◆Microwire/Plus:National Semiconductor;


液晶驅動裝置(LCD Driver)


在顯示介面上,LCD(Liquid Crystal Display)是常運用的顯示裝置,例如在一些多功能的電話、數位溫度計、呼叫器、大哥大、掌上型遊戲機以上皆可以發現它的蹤跡。因此內含LCD驅動線路的微控制器運用相當廣泛,有兩種驅動方式可供選用:Segment和Dot Matrix,例如:之前流行的寵物蛋是使用Dot Matrix的LCD顯示器;日系的微控制器廠商提供多樣內含LCD驅動裝置的微控制器可供選用,另外HOLTEK HT49XX 系列 也提供LCD驅動裝置的微控制器。


螢光管驅動裝置(VFT Driver)


LCD顯示器在無光源或無背光的環境下,我們即無法讀取顯示器之內容,而VFT顯示器可提供高亮度、且色彩多變化的視覺效果,常應用於高級的家電產品上,如:碟影機、DSP均衡器。要求炫麗輸出效果的產品,在微控制器的選擇上VFT(Vacuum Fluorescent Tube)Driver是重要的資源之一。

OSD


對於電視及監視器人性化介面是不可缺少的功能之一,OSD(On Screen Display)部份顯示回路為接收水平同步信號(H-Sync)及垂直同步信號(V-Sync),再將信號透過RGB及Blanking將螢幕資訊送出,其顯示顏色至多可達八種。各微控制器指令執行速率會造成OSD的顯示行數及字段的不同,顯示行數由二行至數十行,字段則由15~26個字符或更多,通常執行速率較快者可顯示較多的行數、字段,速率較慢者在顯示上會有直接的受限。


模擬轉換數位介面(ADC)


由於微控制器諸多應用上,需要偵測外部環境狀況,做為處理數據上的參考,如在TV應用方面其調諧器(Tuner)之自動頻率控制(Auto Frequency Control)訊號,即為電壓訊號,其它如溫度之偵測也多是轉換為電壓訊號,所以模擬/數位轉換(Analog to Digital Converter)的應用在工業及消費電子上都很廣泛。



模擬之場合是如此頻繁,所以各廠家提供模擬/數位之轉換便成為一般之標準規格(如HOLTEK HT46XX系列),雖然如此,對於模擬/數位之解析度各家差異很大,由3位~10位皆有,視各不同需求而異。雖然提供的轉換訊息通道有很多,通常內部僅有一個電路處理,靠選擇器切換,對於時間考慮不是特別強調之應用上,不致有太大之影響。



另外還有一種模擬/數位之轉換方式,就是R to F(Resistance to Freguency),一般運用在溫度/濕度之偵測,利用電阻/電容式Sensor的變化特性,轉換成頻率值,以此頻率值來計算溫度/濕度的相對性,此類的IC如HOLTEK HT47XX系列。

數位轉換模擬介面(DAC)


在控制模擬組件需要模擬訊號,以微控制器而言,就必須內建數位/模擬轉換(Digital to Analog Converter)來因應.其內部由數位/模擬轉換緩衝記憶體器及一階梯電阻構成,數位/模擬的解析度各為8位.在一個8位/參考電壓為5V的微控制器,假設一個數位值60轉換成模擬值的計算方式是(60/256x5Volts)=1.171875V

例如應用在鎖相回路上,VCO(電壓控制振蕩器)即可用DAC做控制。另外Voice IC也是利用原先將語音錄制成數位資料,然後用DAC 方式將數位資料音頻轉換還原模擬語音訊號。

脈寬調變(PWM)


其目的也是以數位輸出搭配週邊回路,達到模擬的效果,其組成有前置配器(Pre-divider)、計數器(Counter)、數據閂鎖(Data Latches)、及比較電路

(Compare Circuits)等。PWM(Pulse Width Modulation)解析度由程控,當然在一般的I/O埠亦可用時間及Duty Cycle計算技巧來達成PWM之功能,但反應速度會受到限制,且以今日各大半導體廠家皆提供其PWM功能之微控制器就便利性而言 (如HOLTEK HT46XX系列),實在不需再將心思放在PWM之撰寫上,以減輕軟體的負擔。而PWM之功能由6位~14位之解析度,適合各種不同的需求。

DTMF產生器、接收器


電話由原來的Pulse演進為現在的Tone譯碼方式,不但提高了譯碼的速度,也增加了可靠性與抗噪音能力,DTMF(Dual Tone Multiple Frequency)顧名思義就是混合兩種頻率的音頻訊號,所以譯碼不易出差錯。應用在電話產品的微控制器時,DTMF這個資源常是選擇的重要規格。


看門狗(Watchdog Timer)


微控制器在產品中是不允許當機的,但受到噪音干擾或作業不當時,需有防範措施確保微控制器在當機的情況下能夠自動重置,讓微控制器能夠繼續運作.我們可以說看門狗(Watchdog timer)是用來監看微控制器是否為不正常的當機,許多微控制器都已把它列為標準配備。

看門狗定時器實際上就像一個自跑式的RC振蕩器,它完全不必外加零件,意即不管是晶片的時脈振蕩接腳的時脈振蕩有沒有停止,它還是繼續計數而不隨之中斷而停止,即便是晶片進入省電的Halt狀態(在Halt狀態下,晶片之時脈停止振蕩也一定不曾停止Watchdog timer之計時,當計時逾時後將使本晶片自動重置,I/O腳輸出保持不變,耗電相當的省),Watchdog timer要不要致能,在OTP版本必須在程式燒錄時決定,以便決定要不要燒斷其保險絲,在Mask版本由使用者選擇是否使用這個功能。


雙時脈(Dual Clock)


微控制器的供應時脈愈高時 ,相對地耗電量也愈大 因此在一些使用電池供應的產品選用時 ,雙時脈常是必須考慮的功能 ,一般副時脈是以32.768KHz運作,主要做為計時(Real Time Clock)之用。

所以綜合上面所言,微控制器的指令集結構較單純、容易發展及修改、I/O及中斷處理能力強,主要發展工作集中在軟體設計上,只要透過發展系統(ICE:In-Circuit Emulator)及萬用板即可進行線上模擬工作,進行設計及修改的工作。由於微控制器具備單價低、系統硬體架構簡單、應用程式的發展及修改容易、晶片穩定度佳、可靠度高,是故其應用領域極廣,幾乎是無所不在。故在不同的場合選擇不同的配備,充份了解微控制器的內部資源將有助於產品開發且降低成本。相信在未來會陸續增加新的週邊資源於微控制器內,應用的範圍也愈來愈廣,也因目前已經取代傳統電路設計觀念,進而成為新的設計主流。



作者:陳進成 畢業於海洋大學 電子工程學系

目前服務於盛群半導體 微控制器產品處



參考資料:1.零組件雜誌 1997,9,vol.71

(微控制器內藏資源) 孫文華



2.新電子雜誌 2000/05/16

( 微控制器的發展) 劉鑫

2011年5月17日 星期二

Display Oracle stored procedures

 來源出處:
http://dba-oracle.com/t_display_oracle_stored_procedures.htm

Display Oracle stored procedures

Oracle Tips by Burleson Consulting
September 6, 2008


Name                                       Null?    Type
------------------------------------------------------------------
OWNER                                          VARCHAR2(30)
NAME                                               VARCHAR2(30)
TYPE                                                VARCHAR2(12)
LINE                                                 NUMBER
TEXT
                                                VARCHAR2(4000)
 
Notice that the TEXT column is a VARCHAR2(4000) data type. This 4000 length indicates that to properly view any text lines you may need to set the LONG variable in SQL*Plus to 4000. A simple select will return all of the lines for a given stored object in order as shown in Figure 6.
 
select 'create or replace '||text,line
from
 dba_source
where
 owner = upper('&&owner') and
 type = upper('&&obj_type') and
 name = upper('&&obj_name') and
 line = 1
UNION
select text,line
from
 dba_source s2
where
 s2.name = upper('&&3') and
 s2.owner = upper('&&1') and
 s2.type = upper('&&2') and
 s2.line > 1
order by 2;

Question:
I want the SQL to display all stored procedures in my database. I also want to know how to show the source for Oracle stored procedures. Where do I find stored procedure information in Oracle dictionary?
Answer:
 The dba_source view contains the details on Oracle stored procedures and it’s easy to query dba_source to see stored procedure details.
For a roadmap to the dictionary views, get the free Oracle poster, indispensible for these types of SQL queries.
The DBA_SOURCE view is based on the SOURCE$ table that holds all of the source code for the stored objects (other than triggers and views) in the database.

丁式車體顯--便宜車險買限額保障

文章出處;聯合理財網
http://money.udn.com/wealth/printpage.jsp?f_ART_ID=228866


瞄準老車 便宜車險買限額保障
【聯合報╱記者孫中英/台北報導】很多車主為節省保費支出,愛車的「年齡」愈大,多半就不願再加保「車體損失險」。造成道路上行駛的「老車」,反而風險高。
有鑑於此,產險業已開發出「老車車體險」,即丁式車體險,11年以上的老車,都能保。


老車車主最不愛保的險種,就是「車體損失險」,因為車體險保費最貴。富邦產險指出,像「甲式」車體險,提供汽車保障最完整,當發生「碰撞、傾覆、火災、閃電、雷擊、爆炸、拋擲物或墜落物」,甚至「第三人非善意行為、與車輛發生碰撞及擦撞」等情況,造成汽車的車體損失,都可理賠。
但這種「上天下地」全保的狀況,光是一台70萬元的國產小客車,一年保費就要6.3萬元,一般車主多不願負擔。
乙式車體險,只比甲式保障少一項,但年保費即使降到3萬多元,車主購買意願也很低。
產險業接著開發出丙式車體險,即所謂的「車碰車」,只提供「汽車與汽車碰撞時的損失理賠」,年保費已經降到1萬多元,但很多車主還是覺得不夠便宜。
國泰產險已開發出「丁式」車體險。國泰產險經理孫騰敏說,丁式車險就是提供一個「限額保障」,即車體發生損失時,最高理賠金額,約在10到15萬元左右。
孫騰敏說,這種丁式車體險,很適合「保費預算不多」的車主,還有「老車車主」,因為丁式車體險最高可承保11年車齡的老車,但保障限額,會降到3萬元。
孫騰敏說,以30到60歲男性,無投保紀錄,為自己價值60.9萬元的汽車投保丁式車體險為例,一年保費4,500元,就有10萬元保障。跟「什麼都保」的甲式車體險相比,丁式車體險保費支出,還不到甲式車險的1/10。
台灣產物的「丙式限額車對車碰撞」保險,目標也鎖定10年車齡的中古車。
台灣產物協理林倖朱表示,其實大部分車主的花費,都集中在汽車發生損失後的修復費用,像該公司的丙式限額險,一年保費約3,000多元,但就有10到15萬元的保額,已足夠支應一年的修車費用。

車體損失險種類

文章來源:華南產物保險
http://www.south-china.com.tw/pro01-1.asp?sn3=112


車體損失險承保範圍
車體損失險
甲式
一、 碰撞、傾覆
二、 火災
三、 閃電、雷擊
四、 爆炸
五、 拋擲物或墜落物
六、 第三者之非善意行為
七、 不屬本保險契約特別載明為
        不保事項之任何其他原因。
¿理賠範圍包括被保險汽車救護費用、
   合理拖車費用及修復費用。 
¿
被保險人包括配偶、其同居家屬、
   四親等內血親、三親等內姻親、雇用
   之駕駛人及所屬之使用人。
¿駕駛人受酒精類或違禁藥物影響駕車
   而發生意外事故,屬不保事項,故不
   予理賠。
¿甲式車體險有基本自負額之規定。
¿乙式車體險可選擇須自負額或
   免自負額。
車體損失險
乙 式
一、 碰撞、傾覆
二、 火災
三、 閃電、雷擊
四、 爆炸
五、 拋擲物或墜落物
車 體 損 失 險
丙 式(車碰車)
被保險汽車在保險期間內因與車輛發生碰撞、擦撞所致之毀損、滅失,在確認事故之對方車輛後,本公司始負賠償之責。
¿若對方車輛肇事逃逸,經憲警現場處
   理及保險公司查證屬實,亦負賠償之
   責。
¿本保險採免自負額承保。



假日平價車險 正夯

文章來源出處:2010-07-30 01:47 工商時報 
http://money.chinatimes.com/news/news-content.aspx?id=20100730000246&cid=1212


油價高漲,停車費用亦不低下,許多開車族平時通勤上班,只在例假日才會全家一同出遊,由於一般傳統車險保費貴,為搶食假日車險商機,產險業者改打平價車險,如假日車險、駕照保險、第3人無保險汽車碰撞車損險等,由於保費與傳統車險差價至少5成,相當受開車出遊族青睞。

開車出遊,最怕遇到事故,不僅遊興全沒,還有一大堆理賠問題,且在事故理賠金額越來越高下,一旦車子未保險又遇事故,那麼車主恐將面臨沈重經濟負擔,為提供平日不開車,只在假日才用車的族群,更經濟實惠的保險,產險業者紛紛祭出平價車險。

如富邦產險主打假日車險,富邦產險表示,一般傳統車險,不僅保費貴,保障內容也只有車子本身,以較便宜的丙式車險來看,若市價70萬車輛,保費約1萬元。

這樣的費用對於平日不用車的車主保費頗重,為減輕車主負擔,推出假日車險,該車險不僅有車碰車險,還有第3人責任險、乘客險、慰問金,但保費卻只要傳統保費48折,富邦產指出,由於保費差很多,因此,該保單業務持續在穩定成長中。

另對於擁有駕照但無車一族來說,假期中想要租車或借朋友的車出遊,卻擔心保障不足,則可考慮的「駕照保險」,保障跟著駕照走。

泰安產險指出,只要持有駕照者且年滿30歲就可投保,不論是旅遊租車或向朋友借車,都可享意外事故、責任險、車損險等保障,保險期間短自2天、長至1年,男性車主的保費介於262元至6,550元。

至於開車族最常遇到的車子意外擦撞困擾部分,若發生車子遭其他車輛碰撞而使愛車車體毀損,但對方卻未加保車損險,雙方為理賠爭得面紅耳赤。

蘇黎世產險指出,現車主只要有投保第3人無保險汽車碰撞車損險,若到對方車主未投保財損險或以小客車駕照駕駛貨車等越級駕駛等狀況,理賠機制就會啟動,產險公司就會先賠付愛車的車體碰撞損失,以保額3萬元、5萬元、10萬元來看,保費約300元至1萬多元不等。