電子裝置及其數據傳輸方法
【技術領域】
[0001]本發明是有關于一種電子裝置及其數據傳輸方法,且特別是有關于一種可增加數據傳輸種類的電子裝置及其數據傳輸方法。
【背景技術】
[0002]在傳統的串行式通用輸入輸出(serialgeneral purpose input output,SGP1)架構在傳輸數據之前,會事先定義與分配固定數量的時槽給復雜可編程邏輯器件(complexprogrammable logic device,CPLD),以進行數據的傳送。
[0003]然而,在分配完時槽之后,SGP1可傳送的數據種類則無法再增加,亦即,在固定數據時槽的數量下,其已局限住傳輸數據的種類而無法再進一步變化、增加。舉例來說,若一個封包僅可傳送8個位,則SGP1傳輸數據時僅能傳送8個數據。然而,有時某一個資料需I個封包以上才能收集到完整資料。
【發明內容】
[0004]有鑒于以上的問題,本揭露提出一種電子裝置及其數據傳輸方法,此電子裝置及其數據傳輸方法通過計算串行式通用輸入輸出總線的數據的讀取次數,來增加數據傳輸的種類。
[0005]根據本揭露一實施例中的一種電子裝置,此電子裝置接收多數個待傳數據,且電性耦接至主機裝置,且此電子裝置包括計數器、多路復用器以及緩存器。其中,多路復用器電性連接計數器并接收上述多個待傳數據,緩存器電性連接計數器與多路復用器的輸出端。計數器用于計算主機裝置對電子裝置的讀取次數,并根據此讀取次數產生讀取次數標頭。多路復用器用于依據讀取次數標頭自上述這些待傳數據中選擇出傳送數據,其中這些待傳數據分別對應于不同的讀取次數的讀取次數標頭。緩存器用于暫存上述的讀取次數標頭,并于接收到傳送數據后,輸出讀取次數標頭與傳送數據至主機裝置。其中,主機裝置對讀取次數標頭與傳送數據進行譯碼運算,并得到所選擇的待傳數據。
[0006]在一實施例中,電子裝置更包括時鐘頻率偵測器,此時鐘頻率偵測器電性連接計數器,且此時鐘頻率偵測器用于依據主機裝置所輸出的時鐘頻率訊號,判斷電子裝置是否被主機裝置讀取。
[0007]在一實施例中,計數器依據主機裝置所輸出的加載訊號來產生讀取次數標頭。
[0008]在一實施例中,計數器于計算出讀取次數達到默認值時,則將讀取次數歸零,并重新計算主機裝置對電子裝置的讀取次數。
[0009]承接上述實施例,讀取次數標頭與傳送數據總共占M個時槽,而讀取次數標頭占N個時槽,默認值為2N-1,其中M與N為正整數且M大于N。
[0010]根據本揭露一實施例中的一種數據傳輸方法,此數據傳輸方法適用于電子裝置與主機裝置進行數據傳輸,其中上述的電子裝置接收多數個待傳數據,且電性耦接至主機裝置。此數據傳輸方法的步驟流程依序如下所述。首先,電子裝置計算主機裝置對電子裝置的讀取次數,并根據此讀取次數產生讀取次數標頭。接著,電子裝置依據讀取次數標頭,自多個待傳數據中選擇出傳送數據,其中這些待傳數據分別對應于不同的讀取次數的讀取次數標頭。再來,電子裝置輸出讀取次數標頭與傳送數據至主機裝置。最后,主機裝置對讀取次數標頭與傳送數據進行譯碼運算,并得到所選擇的待傳數據。
[0011 ] 在一實施例中,于計算主機裝置對電子裝置的讀取次數的步驟之前更包括依據主機裝置所輸出的時鐘頻率訊號,判斷電子裝置是否被主機裝置讀取。
[0012]在一實施例中,于產生讀取次數標頭的步驟中依據主機裝置所輸出的加載訊號來產生讀取次數標頭。
[0013]在一實施例中,當計算出讀取次數達到默認值時,則將讀取次數歸零,并重新計算主機裝置對電子裝置的讀取次數。
[0014]承接上述實施例,讀取次數標頭與傳送數據總共占M個時槽,而讀取次數標頭占N個時槽,默認值為2N-1,其中M與N為正整數且M大于N。
[0015]綜合以上所述,本揭露提供一種電子裝置及其數據傳輸方法,此電子裝置及其數據傳輸方法可根據數據傳輸的需求以及主機裝置欲對電子裝置的讀取次數,而適當地分配用于作為表頭的讀取次數標頭的時槽數量,以增加或改變傳輸資料的種類,進而可以在相同的時槽數量下獲得更多的信息。
[0016]以上關于本揭露內容的說明及以下的實施方式的說明用于示范與解釋本發明的精神與原理,并且提供本發明的權利要求更進一步的解釋。
【附圖說明】
[0017]圖1為根據本揭露一實施例的電子裝置的功能方塊圖。
[0018]圖2為根據第I圖的電子裝置以串行式通用目的輸入輸出接口進行傳輸時的時槽分配示意圖。
[0019]
[0020]圖3為根據本揭露一實施例的數據傳輸方法的步驟流程圖
[0021]組件標號說明:
[0022]I電子裝置
[0023]10時鐘頻率偵測器
[0024]12計數器
[0025]14多路復用器
[0026]16緩存器
[0027]2主機裝置
[0028]S30?S36步驟流程
【具體實施方式】
[0029]以下在實施方式中詳細敘述本發明的詳細特征以及優點,其內容足以使任何熟習相關技藝者了解本發明的技術內容并據以實施,且根據本說明書所揭露的內容、權利要求范圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關的目的及優點。以下的實施例系進一步詳細說明本發明的觀點,但非以任何觀點限制本發明的范疇。
[0030]請參照圖1,圖1為根據本揭露一實施例的電子裝置的功能方塊圖。如圖1所示,電子裝置I接收多數個待傳數據,且電性耦接至主機裝置2,此電子裝置I主要包括時鐘頻率偵測器10、計數器12、多路復用器14以及緩存器16,其中時鐘頻率偵測器10電性連接計數器12,而計數器12更分別電性連接多路復用器14的控制端與緩存器16。于實務上,本發明實施例的電子裝置I適用于以串行式通用目的輸入輸出(serial general purposeinput/output, SGP1)接口與主機裝置2進行數據傳輸,其中主機裝置2可視為SGP1啟動設備(SGP1 initiator),而電子裝置I則可視為SGP1目標設備(SGP1 target)。
[0031]于實務上,主機裝置2可以為一種基板管理控制器(baseboard managementcontroller,BMC)或中央處理器(central processing unit,CPU),而電子裝置 I 則可以為一種以現場可編程門陣列(field programmable gate array,FPGA)或復雜可編程邏輯器件(complex programmable logic device,CPLD)實現的電子組件,但不以上述為限。此夕卜,在實際的操作中,主機裝置2會分配固定數量的多個時槽(time slots)給電子裝置I使用,以進行兩裝置之間的數據傳輸。以下分別就電子裝置I中的各電子組件作詳細的說明。
[0032]時鐘頻率偵測器10接收主機裝置2所提供的時鐘頻率訊號,并且用于依據上述的時鐘頻率訊號判斷電子裝置I是否被主機裝置2所讀取。于實務上,時鐘頻率訊號為SGP1架構中的SClock訊號。在實際的操作中,時鐘頻率偵測器10可以藉由偵測時鐘頻率訊號的變化,例如處于上升緣或處于下降緣,來判斷主機裝置2是否正在讀取電子裝置1,本發明在此不加以限制。
[0033]計數器12接收主機裝置2所提供的加載訊號,且此計數器12用于計算主機裝置2對電子裝置I的讀取次數,并根據此讀取次數產生一組讀取次數標頭。其中,讀取次數標頭以二進制字符串指示主機裝置2對電子裝置I的讀取為第幾次讀取。更詳細來說,當計數器12計算出主機裝置2對電子裝置I的讀取次數為第一次讀取時,則會產生指示為第一次讀取的讀取次數標頭「00」;當計數器12計算出主機裝置2對電子裝置I的讀取次數為第二次讀取時,則會產生指示為第二次讀取的讀取次數標頭「01」;當計數器12計算出主機裝置2對電子裝置I的讀取次數為第三次讀取時,則會產生指示為第三次讀取的讀取次數標頭「10」,其后續的讀取次數的計算則以此類推。
[0034]值得注意的是,本發明的計數器12于每一次主機裝置2對電子裝置I進行讀取時,其所累計的讀取次數將會加一,直到計數器12所累計的讀取次數達到了一個默認值時,其所累計的讀取次數將會自動歸零,并于主機裝置2下一次對電子裝置I進行讀取時,重新累計主機裝置2對電子裝置I的讀取次數(亦即由重新由第一次讀取開始累計)。換句話說,計數器12于計算出主機裝置2對電子裝置I的讀取次數達到上述的默認值時,則將讀取次數歸零,并重新計算主機裝置對該電子裝置的讀取次數。在實際的操作中,計數器12依據主機裝置2所輸出的加載訊號來產生讀取次數標頭。于實務上,加載訊號為SGP1架構中的SLoad訊號。
[0035]多路復用器14的輸入端接收有多個待傳數據,這些待傳數據分別對應于不同的讀取次數的讀取次數標頭。多路復用器14用于依據計數器12所產生的讀取次數標頭,而自上述多個待傳數據中選擇出對應于此讀取次數標頭的傳送數據。更詳細來說,當多路復用器14的控制端接收到指示為第一次讀取的讀取次數標頭「00」時,多路復用器14會自上述多個待傳數據中選擇輸出對應于讀取次數標頭「00」的第一待傳資料,此第一待傳數據即為此次的傳送數據;當多路復用器14的控制端接收到指示為第四次讀取的讀取次數標頭「11」時,多路復用器14會自上述多個待傳數據中選擇輸出對應于讀取次數標頭「11」的第四待傳資料,此第四待傳數據即為此次的傳送數據,其余依此類推。
[0036]此外,本發明在此不加以限制所述多個待傳數據所代表的信息。舉例來說,當計數器12計算出主機裝置2對電子裝置I的讀取次數為第一次讀取(亦即讀取次數標頭為「00」)時,多路復用器14會