帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
SmartMedia設計技術探微
 

【作者: 誠君】   2002年08月05日 星期一

瀏覽人次:【7851】

SmartMedia卡是應用在可攜式檔案儲存設備上的裝置,例如:筆記型電腦、數位相機、PDA、MP3、IA、攝影機、錄放影機、錄放音機、電子樂器、傳真機、印表機、掃瞄器、文字處理器、手持裝置.....等數據處理設備。(圖一)此外,凡是需要可攜式記憶體、版本升級或記憶體升級的設備,都可以採用它。


在技術應用上,SmartMedia Card、CompactFlash Card、Memory Stick、SecureDigital Card和MultiMedia Card都是屬於PCMCIA或稱作PC Card技術領域。目前市場上有銷售所謂六合一(另再包含MicroDrive)讀卡機,其內部就包含著可控制上述五種記憶卡的控制器(controller)。


《圖一 SanDisk  SmartMedia Card》
《圖一 SanDisk SmartMedia Card》

SmartMedia技術介紹

SSFDC論壇(Solid State Floppy Disk Card Forum),早在1996年就開始制定SmartMedia技術標準。SmartMedia(NAND FLASH)卡1.0版標準是在1999年5月正式公佈;但是,連接SmartMedia卡和主機之間的SmartMedia介面標準卻遲遲未正式公佈。


最初,曾經以ISA介面和EPP並列埠介面來實現PC與NAND FLASH之間的DOS/FAT檔案傳收;現在則是遵照Toshiba公司在2000年7月1日所制定的「SmartMedia介面資料庫(SmartMedia Interface Library;SMIL)」1.0版來設計SmartMedia控制晶片、軟體或韌體,正式取代ISA或EPP介面。


SmartMedia卡1.0版標準包含四個獨立規範:機構篇、電子篇、實體格式篇、邏輯格式篇。業者必須遵守這些規範,才能確保其產品可與其它廠牌的SmartMedia控制晶片互通。


SMIL標準制定

在早期,即使現在仍然有一些業者,自行以簡單的電路設計NAND FLASH記憶卡銷售,只要是使用PC Card ATA介面插槽,而主機(筆記型電腦)上有裝設特製的檔案轉換軟體或韌體,此記憶卡就可以發揮類似SmartMedia卡的功能。但是,現在這種記憶卡是無法取得SSFDC認證的,也無法和標準的SmartMedia控制晶片互通。這種作法,在SMIL尚未正式制定之前還行的通,但是現在就不行了。


如果SmartMedia卡標準是SmartMedia裝置(device)的標準,那SMIL標準就是SmartMedia主機(host)的標準,如(圖二)所示。SMIL包含兩個獨立規範:軟體篇和硬體篇。業者設計時,必須遵守這些規範,才能確保其產品可與其它廠牌的SmartMedia軟體或硬體互通。


過去,在SMIL尚未正式公佈之前,實現SmartMedia介面大概有軟體/韌體、硬體、部份韌體和部份硬體等三種方法(圖三),分述如下:


軟體或韌體方法

因為SmartMedia是主機(host)與NAND FLASH之間的檔案轉換(file translation)技術,所以,可以直接在主機上裝設檔案轉換軟體或韌體,如圖三下方所示,就能以串列(serial)方式與NAND FLASH通訊,而主機不需加裝SmartMedia控制晶片。此種作法,對軟體設計而言有其複雜度。這就是為甚麼後來的SMIL標準之軟體篇會比硬體篇多出100頁的原因;實際上,採用這種方法的設計難度比SMIL的軟體篇還要難,因為SMIL軟體是架在SMIL硬體之上,如圖二所示,所以SMIL軟體有SMIL暫存器可資應用。而這裡所採用的完全是軟體映射的技巧(純軟體),所以比較困難。


硬體方法

就是將檔案轉換技術以控制器硬體來實現,在主機上不需要裝設軟體,如(圖三)上方所示。這種方法對SmartMedia介面卡製造商而言很簡單,只要花錢買檔案轉換(FTL)控制器晶片,並將它嵌入到介面卡裡面就行了,當然這是不符合SmartMedia卡1.0版標準的;但對晶片設計商而言,檔案轉換控制器的技術門檻雖然不會很高,但是如果此晶片的所有功能模組都要自行開發的話,仍然需要一段時間來研發。而且設計出來的晶片是屬於特殊應用晶片(ASIC),其成本比較高,而市場效益並不大。


部份韌體和部份硬體方法

這個折衷方案是採用通用的微控制器(microcontroller)來取代既昂貴且又是特殊用途的檔案轉換控制器;另外需自行設計檔案轉換韌體,由微控制器來執行此韌體,以實現檔案轉換的功能。這種方法的成功關鍵,在於檔案轉換韌體的功能是否正確無誤,這對沒有任何軟韌體開發經驗的介面卡製造商而言,並非易事。


其實,SMIL的功能就是檔案轉換,只不過它具有軟體架在硬體之上的特殊架構。現在,SMIL統一了上述三種作法,結束了業者「各自表述、自由發揮」的年代。SMIL將對主機製造商帶來一定的影響;但對遵守SmartMedia卡1.0版標準的記憶卡製造商而言,影響甚微。當然,對那些早期自行採用上述三種方法實現SmartMedia卡的業者而言,須要修改原有的設計,以符合SMIL標準,所以其衝擊不小。



《圖二  實現SmartMedia的方法》
《圖二 實現SmartMedia的方法》

《圖三  實現SmartMedia介面的三種方法》
《圖三 實現SmartMedia介面的三種方法》
《圖四  SmartMedia卡的接腳圖》
《圖四 SmartMedia卡的接腳圖》

SmartMedia卡的腳位信號

作為一種新的通訊介面必須要設計簡單、成本低,才會有經濟效益,而SmartMedia卡就具有這樣的優點。


(圖四)及(表一)是SmartMedia卡的接腳圖及腳位說明,SmartMedia使用一個8位元的多工匯流排來輸入數據和位址信號,數據輸出也是使用這個匯流排。這使得SmartMedia卡的接腳數目銳減,不管SmartMedia卡的容量有多大,其腳位永遠都是22個。而控制SmartMedia卡的控制晶片架構,如(圖五)所示,也就可以簡化了。SmartMedia卡的接腳信號和其功能分述如下:


1.數據輸出入終端(D0-7)

位址、命令、數據的輸出入通訊埠(I/O Port)。


2.命令鎖存致動(Command Latch Enable;CLE)

此輸入信號控制著命令至內部命令暫存器的路徑,可將命令傳到SmartMedia卡內部的命令暫存器中。在寫入致動(WE)為上升緣時,若命令鎖存致動為高值(high),則命令會被鎖住,輸出入通訊埠中的數據會被寫入命令暫存器中。


3.位址鎖存致動(Address Latch Enable;ALE )

此信號決定輸入數據是寫入內部位址暫存器或數據暫存器之中。


4.寫入致動(Write Enable;WE)

將輸入數據寫入SmartMedia卡中。


5.讀出致動(Read Enable;RE)

將輸出入通訊埠中的數據,以串列方式輸出。這個信號也稱作輸出致動(Output Enable;OE)。


6.介面卡致動(Card Enable;CE)

這等同於一般的「晶片選擇(Chip Select;CS)」信號。當此信號為高值時,SmartMedia卡進入待命(standby)狀態。


7.寫入保護(Write Protect;WP)

強迫不准寫入和清除(erase)。當瞬間功率增加時,寫入保護信號必須為低值,才能使SmartMedia卡內部的高壓產生器重置(reset),避免將數據寫入FLASH中或清除FLASH中的數據。


8.預備/忙碌(Ready/Busy)

這是個開路汲極(open drain),可表示SmartMedia卡內部的作業情況。當在進行讀出、寫入、清除作業時,此接腳將會輸出低值,代表忙碌狀態;當前述作業結束時,此接腳將會輸出高值,代表預備狀態。


9.介面卡偵測(Card Detect;CD)

這是偵測SmartMedia卡用的信號,輸出接地準位(ground level)。


10.低電壓偵測(Low Voltage Detect)

偵測SmartMedia卡的工作電壓。使用3.3V NAND FLASH時,它輸出VCC;使用5V NAND FLASH時,它沒有輸出任何值;使用MASK ROM時,它輸出VCC。


11.VCC與GND

前者係指供電壓接腳,後者為接地腳。(圖六)是SmartMedia卡的內部架構,請千萬不要與圖四之SmartMedia SMIL控制器的內部架構混淆了。



《圖五  SmartMedia SMIL控制器的架構》
《圖五 SmartMedia SMIL控制器的架構》
《表一  SmartMedia卡的腳位說明》
《表一 SmartMedia卡的腳位說明》

《圖六  SmartMedia卡內部架構》
《圖六 SmartMedia卡內部架構》

《表二  SmartMedia控制器中的主要暫存器》
《表二 SmartMedia控制器中的主要暫存器》

SmartMedia SMIL控制器

SmartMedia SMIL控制器是嵌入至主機系統中,它上面有SMIL驅動程式,這兩者構成了主機與SmartMedia卡之間的橋樑。


SMIL控制器的主要暫存器數量有3個,分別是:數據暫存器、模式暫存器、狀態暫存器,另外有兩個可選擇的(optional)暫存器:中斷狀態暫存器、中斷遮蔽暫存器(interrupt mask register),如(表二)。SMIL驅動程式擷取數據暫存器、模式暫存器、狀態暫存器,來驅動SMIL控制器。分述這五個暫存器如下:


1.數據暫存器

數據暫存器是執行數據傳輸的可讀寫暫存器。依據主機系統,可以是8、16、32位元數據傳輸模式。


2.模式暫存器

模式暫存器是可寫入的暫存器。設定數據暫存器的工作模式。模式設定命令是依照表三所示的規則來決定的。其中PCNT0/PCNT1是電壓控制用的,PCNT1只有在單獨控制電壓時才能為"1",例如:開機、關機、退出抑制、退出啟動、閉鎖、開鎖、更換供電壓為3.3V或5V。每一個命令都有一個固定的8位元碼,例如:待命命令為00h。


3.狀態暫存器

狀態暫存器是唯讀的暫存器。儲存SMIL控制器目前的狀態資訊(status information),它共有8個位元,其意義分述如下:


  • ●忙碌(bit 7):代表SMIL控制器目前的狀態,0值是預備(ready),1值是忙碌(busy)。


  • ●模式(bit 6):代表SMIL控制器的供電模式,0值是3.3V,1值是5V。


  • ●bit 5固定為0。


  • ●供電(PwrOn,bit 4):代表電源是否有提供給SMIL控制器。當SmartMedia卡插入或重置(reset)時,會接上電源;當SmartMedia卡退出時,會切斷電源。0值是切斷電源,1值是接上電源。


  • ●SmartMedia卡的狀態改變(bit 3):代表SmartMedia卡正轉換至另一個狀態。實際上,它表示SmartMedia卡正在插入或退出中。當模式暫存器被寫入後,此位元會被重置。電壓狀態和中斷狀態暫存器並不會影響到它。1值表示SmartMedia卡的狀態有改變,0值表示沒有改變。


  • ●SmartMedia卡的存在(bit 2):1值表示SmartMedia卡已經插入,並啟動備用;0值表示在插槽中,並沒有SmartMedia卡存在。


  • ●退出請求(bit 1):當發出退出命令時,會出現中斷,此位元值即代表此中斷是否有產生。模式暫存器的PCNT1若被寫入1時,此位元將被重置。中斷狀態暫存器並不會影響到它。1值表示有退出請求,0值表示沒有退出請求。


  • ●寫入保護(bit 0):表示是否有寫入保護封緘(seal)的存在。1值表示有寫入保護,0值表示可以寫入(沒有寫入保護)。



2.中斷狀態暫存器

中斷狀態暫存器是可讀寫的暫存器。儲存SMIL控制器目前的中斷資訊,共有8個位元,其意義分述如下:


  • ●bit 4到bit 7固定為0。


  • ● 插入請求(bit 3):如果將SmartMedia卡插入插槽中,此位元值將為1。狀態暫存器的bit 3若改變,此位元值將不為0。1值表示有插入請求,0值表示沒有。


  • ●離開請求(bit 2):如果SmartMedia卡離開插槽,此位元值將為1。狀態暫存器的bit 3若改變,此位元值將不為0。1值表示有離開請求,0值表示沒有。


  • ●退出請求(bit 1):如果有退出中斷產生,此位元值將為1。狀態暫存器的bit 1若改變,此位元值將不為0。1值表示有退出請求,0值表示沒有。


  • ●預備請求(bit 0):如果SmartMedia卡的預備/忙碌信號由低值轉變成高值,此位元值將為1。1值表示有忙碌->預備請求,0值表示沒有。



4.中斷遮蔽暫存器:中斷遮蔽(mask)暫存器是可讀寫的暫存器。儲存SMIL控制器目前的可中斷限制要件(interrupting prohibition information),它共有8個位元,其意義分述如下:

  • ●中斷致動(bit 7):決定是否允許或禁止中斷信號的產生,1值表示允許中斷信號的產生,0值表示禁止。


  • ●插入請求遮蔽(bit 3):「遮蔽」就是使某個位元有效的意思。插入請求遮蔽值若為1,表示要讓中斷狀態暫存器的插入請求位元值有效;若為0,表示無效。


  • ●離開請求遮蔽(bit 2):若為1,表示要讓中斷狀態暫存器的離開請求位元值有效;若為0,表示無效。


  • ●退出請求遮蔽(bit 1):若為1,表示要讓中斷狀態暫存器的退出請求位元值有效;若為0,表示無效。


  • ●預備請求遮蔽(bit 0):若為1,表示要讓中斷狀態暫存器的預備請求位元值有效;若為0,表示無效。



(表四)是SmartMedia卡與SMIL控制器的接腳連接說明,(表五)是擷取SMIL控制器中之暫存器的方法,(表六)是SMIL控制器的接腳說明。主機最多可以控制4個SMIL控制器,控制器的選擇是經由S0~S3和CE0~CE3輸入信號決定,其條件為CE=(S0=CE0)且(S1=CE1)且(S2=CE2)且(S3=CE3),例如:S0=CE0=Vcc,且(S1=CE1)=(S2=CE2)=(S3=CE3)=低值,則連接到CE0和S0的SMIL控制器此時會被啟動。


當要擷取SMIL控制器中之數據暫存器時,必須將命令選擇信號(CSEL)和中斷暫存器選擇信號(IREG)設為低值,輸出入方向則決定於-WR和-RD信號。「-」代表低值致動(pull low active)。其餘暫存器的擷取方法詳見表五。


雖然SmartMedia技術有點複雜,但是,其硬體操作卻很簡單。其硬體的操作流程如下所述:



《表三  模式設定命令》
《表三 模式設定命令》
  • ●當主機系統擷取SmartMedia卡時,SmartMedia卡會被鎖住(media-lock)。


  • ●當SmartMedia卡被鎖住時,退出開關(eject switch)將會暫時失效。退出訊息或事件只交給主機系統。


  • ●當主機系統收到退出訊息,它將等完成目前的工作之後,釋放SmartMedia卡使其不再被鎖住,並執行退出命令。


  • ●如果SmartMedia卡沒被鎖住,則使用退出開關可以將SmartMedia卡退出。


  • ●如果SmartMedia卡不存在,則退出開關所傳來的命令將被忽略。



SmartMedia卡的邏輯格式

SmartMedia 1.0版標準是使用DOS-FAT格式,而DOS-FAT格式具有三個重要參數:


1.CHS參數

DOS-FAT源自於硬碟和軟碟,所以SmartMedia卡中的FLASH也同樣具有磁柱(cylinders)或磁軌(tracks)、磁頭(head)/磁軌、磁區(sector)/磁頭,其中磁區是最基本的單位。以8MBYTES的SmartMedia卡為例,它有250個磁柱、每一個磁軌有4個磁頭、每一個磁頭有16個磁區,一個磁區有512bytes,所以總共有16,000(250*4*16)個磁區。


2.主要啟動磁區(master boot sector)

它位於第一個磁區。000h~1BDh是啟動命令區,但是不被SmartMedia卡使用。此外,還有四個分割組態,一般而言,數據都是儲存於第一個分割組態中,其它分割組態都沒有被使用。


3.分割設定(partition setup)

每個分割都各自具有一個「分割啟動磁區(partition boot sector)」,位於每個分割的最上方。檔案配置表(File Allocation Table;FAT)、磁簇(cluster)大小、檔案目錄數量、和其它有關分割的設定資訊都儲存在這裡。分割啟動磁區之後有檔案配置表區域、根目錄區域、和數據區域(data area)。


為了能讓主機上的硬碟或軟碟可以與SmartCard卡裡的FLASH交換傳送檔案和目錄,所以必須使用邏輯格式(logical format),有別於實體格式。邏輯格式是採用邏輯磁區號碼來區分儲存區域,而不是真正的實體位址。例如:8MBytes DOS-FAT的邏輯磁區號碼是從0到15999,邏輯磁區0是主要啟動磁區、邏輯磁區25是分割啟動磁區、邏輯磁區26~28是FAT區域、邏輯磁區29~31是FAT的複製區域、邏輯磁區32~47是根目錄區域、邏輯磁區48~15999是數據區域。每個區域都具有它們的出廠值,用戶可以用軟體去改變其預設值。例如:要儲存Windows作業系統中的檔案時,必須先將SmartMedia卡裡的FLASH格式化為Windows的標準才行。


邏輯格式是使用磁簇單位大小、磁簇數量來計算邏輯格式化的容量(format capacity),例如:8Mbytes的SmartMedia卡,共可格式化為997個磁簇,其格式是DOS/12 bits FAT,磁簇單位大小為8K Bytes,所以共有7976 Kbytes的格式化容量,雖然還不到實體的容量值8Mbytes。此外,DOS格式下的目錄數量是固定為256個。


當SmartMedia卡啟動後,SMIL軟體必須建立一個邏輯位址和實體位址的轉換查看表(Look-up table),藉此可將邏輯磁區的邏輯位址直接轉換為實體位址,主機的應用程式只需利用邏輯位址就可以擷取SmartMedia卡裡面的檔案內容。


在SMIL 1.0版的軟體標準中,附有SMIL軟體原始碼和說明,在此不再贅述。


結語

去年,國內製造DRAM記憶體的半導體廠商們,因DRAM價格的急劇下滑,而虧損慘重。但是,價格合理的FLASH卻在網路通訊、嵌入式系統市場中持續成長。究其主要原因在於FLASH是屬於系統整合應用技術,有一定的技術進入門檻,所以FLASH將來會衍生成客製化或朝特殊應用的領域發展,而與通用、簡單的DRAM、SRAM有所區隔。


SmartMedia卡就是應用FLASH儲存數據的電子商品,因為它需要整合軟硬體技術,所以,在價格上比技術簡單的DRAM、SRAM更加具有競爭力。而且只要業者保有完整的SmartMedia技術或其它諸如CompactFlash Card、Memory Stick、SecureDigital Card、MultiMedia Card的FLASH應用技術,就不用擔心市場會削價傾銷,造成嚴重虧損了。



《表四  SmartMedia卡與SMIL控制器的接腳連接說明》
《表四 SmartMedia卡與SMIL控制器的接腳連接說明》
相關文章
讓筆記型電腦進入2020年代
應用需求環境嚴苛 工控儲存訴求穩定
搶救面板大作戰 開拓新興市場找商機
Prinics搭載Marvell打造低功耗小型手持行動相片印表機
[Cover]量身打造你的 行動瀏覽器
comments powered by Disqus
相關討論
  相關新聞
» TI創新車用解決方案 加速實現智慧行車的安全未來
» AMD擴展商用AI PC產品陣容 為專業行動與桌上型系統挹注效能
» 豪威汽車影像感測器高通數位底盤 可用於次代ADAS系統
» 意法半導體擴大3D深度感測布局 打造新一代時間飛行感測器
» AMD第2代Versal系列擴展自調適SoC組合 為AI驅動型系統提供端對端加速


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.3.129.247.196
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw