2009年11月18日

第三節 建立自製元件圖

  新增自製元件到我們的專案方式:在library檔按下滑鼠右鍵,選擇「New Part」後將會出現如圖八之新元件屬性對話盒。

圖八:新元件屬性對話盒。
  我們是以USB接頭為例,所以我們此元件命名為「USB_Connector」在名稱欄位中,並且將元件前置名稱保留「U」,其餘的欄位保留內定值即可,然後按下「OK」後將會帶出如圖 九空白元件設計圖,所有繪製元件所需的工具列都在圖九的右邊。

圖九:元件設計圖。
 使用去安排元件的腳位 ,並在放置所有的腳位之後使用 將元件整個包含起來,如圖十所示,其餘本專案所用到而OrCAD內部並無此類元件則可以依此方式建立讀者所需的元件。

圖十:USB接頭元件。

第二節 設計開始

  使用【OrCAD Capture CIS】然後開啟一個新的專案,選擇「File→New→Project」,如圖四所示,您將看見如圖五所示的對話盒,點選「Browser」選擇欲儲存之位置,並將專案名稱取為「otp」之後按下「OK」即可。此時OrCAD會為您準備一個全新且空白的工作視窗,如圖六所示。

圖四:開啟新專案。

圖五:新專案資訊對話合。

圖六:空白的工作視窗。

  由於USB接頭 並非OrCAD內定元件,但由於該接頭為一個6PIN的元件,原則上是可以用OrCAD內建的Library\CONNECTOR\CON6來繪製,但為了增加可讀性,建議讀者可以建立一個新的元件以茲識別;建立新元件的步驟如下:
  點選「File→New→Library」,此時您的專案視窗將與圖七相似。以滑鼠右鍵點選該Library file並選擇「Save As」並將此Library存到..\library資料夾裡;

圖七:OrCAD專案視窗。

第一節 硬體設計工具簡介

  OrCAD是由Cadence 公司所開發適合用在電子電路設計 、模擬 及印刷電路版畫製 的一整套工具。
在開始使用OrCAD建立本專案之前,筆者建議先在專案資料夾下建立底下幾個資料夾以方便管理,讀者當然亦可依自身的習慣做適度的調整;至於如何安裝OrCAD,請讀者參閱相關書籍。
  • schematic-放置所設計的電路圖檔。
  • library-放置自製的電子元件及PCB Footprint。
  • PCB-放置所設計的PCB檔案及產出的Gerber file。
  • BOM-放置所需的製作材料清單及使用元件的相關資料檔。
  • 2009年11月17日

    第二章 硬體設計

      由於本專案的硬體包括USB Token, 個人電腦/伺服器及網路設備,若是逐一說明設計及實作方式,這可能將會是一本比聖經還要厚的書,有鑑於此,筆者硬體部分僅以USB Token做為說明,其他相關硬體設備,請讀者參閱其他書籍。
      USB Token所採用的控制器,在筆者所服務的公司,是採用專屬的硬體控制晶片,因此讀者是無法購得該晶片及相關資訊,所以筆者改以一般市面上可以獲得的晶片做為舉例,其功能方塊圖如圖三所示。

    圖三:USB Token方塊圖。

      圖三中USB控制晶片採用美商Atmel 編號為AT90USB1287的USB MCU,負責接受主機端所下達的命令,並做出適當的回應。  
    由於AT90USB1287及其連接的電子元件並無需大電流驅動及可順利運作,因此筆者採用USB Bus供電模式提供電力給MCU運作,所以圖三中的「Power」是由PC端的「USB」來供應;「Serial Prog.」是為了讓我們可以用非USB Bus作離線式更新AT90USB1287中的firmware使用; AT90USB1287內建3.3V的整流電路,所以後端的「Serial Flash」就不需要額外的整流電路,又因為該MCU具有SPI的介面,所以與Serial Flash也是採用SPI 方式溝通,外接Serial Flash是用來儲存在Client所需要的應用程式。

    第一章 雙因子認證專案

      通常認證方式如圖一所示,使用者僅輸入使用者名稱及密碼;密碼我們可以是為單一認證因子。那何謂雙因子認證?其實生活中就有許多的應用實例,例如:我們使用提款卡到提款機提款,提款卡上的帳號就相等於我們的帳號,而提款卡就是第一認證因子,當提款卡插入至提款機時,提款機會要求我們輸入PIN(Personal Identity Number)碼,這就是第二因子認證,唯有這兩個認證因子全部被認證核可後,才能做後續的轉帳、餘額查詢及提款等行為。

    圖一:Windows XP Logon畫面。

      我們的專案架構如圖二所示,使用者及管理者使用自身所知道的帳號、密碼及第二因子設備(2nd Factor)的相關資訊一併送到後台的認證伺服器,為有通過認證之後,方可使用這個網路所提供的資源及服務。
    在本專案中,使用者與第二因子設備以USB作為通溝的介面,透過SCSI Command去讀取第二因子的資訊,與第一因子資訊(該帳號的密碼)合併後以PAM送到RADIUS認證伺服器進行認證;RADIUS伺服器端認證模組再將第一因子與第二因子拆解分別認證,當兩個因子全部通過認證後,方可使用該網路資源。

    圖二:雙因子認證專案架構圖。

    從最底層的硬體設計到最上層的伺服器程式設計以雙因子認證為例

    本來是想用書本的方式來說明這個專案,一想到出書要受到出版社的規範以及看書的人要花錢買書,所以就決定用blog的方式,來完成這件事情吧!
    希望看得人可以獲得想要的資訊。

    本書目錄:
    壹、 硬體
    第一章 雙因子認證專案
    第二章 硬體設計
     第一節 硬體設計工具簡介
     第二節 設計開始
     第三節 建立自製元件圖
     第四節 繪製電路圖
      一、 設定工作環境:
      二、 開始繪製電路圖
      三、 跨頁面連接及為連接線命名
     第五節 繪製印刷電路板前準備
      一、 重整元件編號(或譯為註解Annotation)
      二、 內部交互參考
      三、 幫元件指定正確的Footprint
      四、 建立線段關聯檔
     第六節 開始繪製印刷電路板
      一、 PCB概論
      二、 新建Footprint
      三、 新建印刷電路版模版
     第七節 開始繪製印刷電路板
      一、 新建新的印刷電路板
      二、 自動佈線
      三、 清除多餘
      四、 檢查違反設計原則
      五、 鋪銅
      六、 輸出Gerber File
    第三章 USB控制器簡介
     第一節 USB控制器
      一、 特點:
      二、 功能方塊圖:
      三、 操作模式相對於工作頻率及工作電壓
     第二節 端點控制器

    貳、 韌體
    第四章 USB
     第一節 USB 2.0系統架構及通訊協定
     第二節 傳說中的第九章
     第三節 Mass Storage
     第四節 FAT
     第五節 除錯

    參、 軟體
    第五章 應用程式
     第一節 與Token溝通
     第二節 除錯
    第六章 伺服端程式
    第一節 RADIUS
    第二節 擴充RADIUS的認證機制
    第三節 擴充IIS
    第四節 管理伺服器