TWI833207B - 用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法 - Google Patents
用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法 Download PDFInfo
- Publication number
- TWI833207B TWI833207B TW111115873A TW111115873A TWI833207B TW I833207 B TWI833207 B TW I833207B TW 111115873 A TW111115873 A TW 111115873A TW 111115873 A TW111115873 A TW 111115873A TW I833207 B TWI833207 B TW I833207B
- Authority
- TW
- Taiwan
- Prior art keywords
- frequency
- clock
- slave
- operating
- master device
- Prior art date
Links
- 238000000034 method Methods 0.000 title description 13
- 230000004044 response Effects 0.000 claims description 25
- 238000010187 selection method Methods 0.000 claims description 8
- 101000689199 Homo sapiens Src-like-adapter Proteins 0.000 description 9
- 102100024519 Src-like-adapter Human genes 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 5
- 101001018196 Homo sapiens Mitogen-activated protein kinase kinase kinase 5 Proteins 0.000 description 4
- 102100033127 Mitogen-activated protein kinase kinase kinase 5 Human genes 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Abstract
為了增加匯流排系統的整體存取速度與效能,本發明將主裝置設計成可以使用不同時脈頻率的時脈信號來對從裝置進行定址與資料讀寫。在定址階段,使用主裝置可以對複數個從裝置成功進行定址的第一操作頻率作為時脈信號的時脈頻率來進行定址,以及在讀寫階段,使用複數個從裝置中的複數個工作時脈頻率中最低者(即,第二操作頻率)作為時脈信號的時脈頻率來進行讀寫,其中主裝置係以匯流排與複數個從裝置連接,且從裝置的工作時脈頻率是指此從裝置支持的最大時脈頻率。
Description
本發明涉及一種用於匯流排系統(bus system)的主裝置(master device),且特別是一種用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法,其可以有效提升匯流排系統的整體存取速度與效能。
積體匯流排電路(Inter-Integrated Circuit,I2C)是一種串列通訊匯流排電路,其允許主裝置透過匯流排與複數個從裝置(slave device)連接。通用型的微控制器(MCU)在做I2C相關產品應用時,有時需要MCU當作I2C的主裝置,並利用一組I2C介面來外接複數個從裝置,進行I2C匯流排的上控制與資料的傳輸。
目前有些從裝置可以接受主裝置以較高的位元率(即,較高的時脈頻率的時脈信號)來存取資料,但有些從裝置只能接受主裝置用較低的位元率(即,較低的時脈頻率的時脈信號)來存取資料。然而,在此一條I2C匯流排上,若掛著能接受的位元率有高低速差異的從裝置時,I2C匯流排的主裝置只能選定I2C匯流排上能接受最低的位元率的從裝置當基準,並以此最低的位元率來存取I2C匯流排上的各個從裝置的資料或控制。因此,原本能接受較高位元率的從裝置也將被迫降速地來被主裝置存取資料與控制,造成此條I2C匯流排的整體效能降低。
舉例來說,複數個從裝置分別為第一從裝置、第二從裝置與第三從裝置,且第一從裝置、第二從裝置與第三從裝置分別能夠接受的最高位元率(即,能夠接受的最高操作時脈頻率,後稱為工作時脈頻率)為400KHz、100KHZ與50KHz。主裝置為了正常無誤的控制與存取各個從裝置的資料,主裝置輸出的I2C時脈信號(即,串列時脈信號)的位元率會設定成50KHz。
本發明實施例提供一種用於匯流排系統的主裝置中的時脈頻率選擇裝置,其中匯流排系統包括主裝置與複數個從裝置,主裝置係以匯流排與複數個從裝置連接,且時脈頻率選擇裝置包括:定址檢查單元,用於檢查主裝置使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功,其中第一操作頻率預設為複數個從裝置的複數個工作時脈頻率中最高者,且從裝置的工作時脈頻率是指從裝置支持的最大時脈頻率;頻率控制單元,電性連接定址檢查單元,根據用於表示主裝置使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功的檢查結果產生第一操作頻率設定信號,以及產生時脈頻率選擇信號;以及時脈信號產生單元,電性連接頻率控制單元,根據第操作頻率設定信號設定時脈信號的第一操作頻率,以及根據時脈頻率選擇信號設定時脈頻率為第一操作頻率或第二操作頻率;其中若檢查結果為成功,則頻率控制單元控制時脈信號產生單元讓主裝置使用時脈頻率為第一操作頻率的時脈信號對複數個從裝置進行定址,以及頻率控制單元控制時脈信號產生單元讓主裝置使用時脈頻率為第二操作頻率的時脈信號對複數個從裝置進行資料讀寫,其中第二操作頻率為複數個從裝置的複數個工作時脈頻率中最低者;其中若檢查結果為失敗,則頻率控制單元產生第一操作頻率設定信號以降低第一操作
頻率,以讓定址檢查單元再次檢查主裝置使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功。
本發明還提供一種主裝置,其包括上述時脈頻率選擇裝置。
本發明還提供一種匯流排系統,其包括上述主裝置與上述複數個從裝置。
本發明實施例還提供一種用於匯流排系統的主裝置中的時脈頻率選擇方法,其中匯流排系統包括主裝置與複數個從裝置,主裝置係以匯流排與複數個從裝置連接,且時脈頻率選擇方法包括:檢查主裝置使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功,其中第一操作頻率預設為複數個從裝置的複數個工作時脈頻率中最高者,且從裝置的工作時脈頻率是指從裝置支持的最大時脈頻率;若檢查結果為成功,則主裝置使用時脈頻率為第一操作頻率的時脈信號對複數個從裝置進行定址,以及主裝置使用時脈頻率為第二操作頻率的時脈信號對複數個從裝置進行資料讀寫,其中第二操作頻率為複數個從裝置的複數個工作時脈頻率中最低者;以及若檢查結果為失敗,則降低第一操作頻率,以再次檢查主裝置使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功。
綜上所述,本發明的技術方案可以增加匯流排系統的整體存取速度與效能。
為了進一步理解本發明的技術、手段和效果,可以參考以下詳細描述和附圖,從而可以徹底和具體地理解本發明的目的、特徵和概念。然而,以下詳細描述和附圖僅用於參考和說明本發明的實現方式,其並非用於限制本發明。
1:匯流排系統
11:主裝置
121:第一從裝置
122:第二從裝置
123:第三從裝置
SCL:時脈信號
SDA:資料
VDD:系統電壓
R1、R2:電阻
2、3:資料框
21、31:定址資訊子框
22:寫入資料子框
23、33:結束子框
32:讀取資料子框
4:時脈頻率選擇裝置
41:定址檢查單元
42:頻率控制單元
43:時脈信號產生單元
S501~S638:步驟
提供的附圖用以使本發明所屬技術領域具有通常知識者可以進一步理解本發明,並且被併入與構成本發明的說明書的一部分。附圖示出了本發明的示範實施例,並且用以與本發明的說明書一起用於解釋本發明的原理。
圖1是本發明實施例的匯流排系統的示意圖。
圖2是本發明實施例的主裝置向從裝置進行資料寫入所傳送的資料框(data frame)的示意圖。
圖3是本發明實施例的主裝置向從裝置進行資料讀取所傳送的資料框的示意圖。
圖4是本發明實施例的主裝置中的時脈頻率選擇裝置的方塊圖。
圖5是本發明實施例的用於匯流排系統的主裝置中的時脈頻率選擇方法的流程圖。
圖6是本發明實施例的時脈頻率選擇方法的定址檢查的流程圖。
現在將詳細參考本發明的示範實施例,其示範實施例會在附圖中被繪示出。在可能的情況下,在附圖和說明書中使用相同的元件符號來指代相同或相似的部件。另外,示範實施例的做法僅是本發明的設計概念的實現方式的一者,下述的該等示範皆非用於限定本發明。
一般來說,從裝置(例如,但不限定是I2C從裝置)可以分為兩大類,一種是其全部的電路都為數位電路的從裝置(即,純數位電路的從裝置),一種是其部分電路為數位電路且其另一部分電路為類比電路的從裝置(即,混合型電路的從裝置)。數位電路可以包括數位邏輯電路、控制暫存器、記憶體(例如,電子抹除式可複寫唯讀記憶體,EEPROM)或數位信號處理單元等,但本發明不以此為限制。類比電路可以包括類比數位轉換器、數位類比轉換器
(例如,音訊碼器或音訊放大器)或類比感測電路(例如,電容式觸控感測器、溫度感測器、濕度感測器或重力感測器)等,但本發明不以此為限制。
主裝置對從裝置進行資料存取(即,讀寫)的完整流程是對從裝置的裝置位址與暫存器位址進行定址,然後收到從裝置的回應後,對從裝置進行驗證,接著,才會進行資料的讀寫,即,主裝置對從裝置進行資料存取的完整流程包括了定址階段與讀寫階段。混合型電路的從裝置同時包括了數位電路與類比電路。混合型電路的從裝置中的數位電路(例如,控制暫存器、邏輯電路等)主要用於定址階段。混合型電路的從裝置中的類比電路則需要較多的時間處理或收集資料,例如電容的充放電(charging and discharging)與環境的感測或偵測(surrounding sensing and detecting),導致這些混合型電路的從裝置的存取速度無法像純數位電路的從裝置的資料存取速度般的快,因此造成混合型電路的從裝置的資料存取的位元率通常不會太高。
有鑑於此,為了增加匯流排系統的整體存取速度與效能,本發明將主裝置設計成可以使用不同時脈頻率的時脈信號來對從裝置進行定址與資料讀寫。在定址階段,使用主裝置可以對複數個從裝置成功進行定址的第一操作頻率作為時脈信號的時脈頻率來進行定址,以及在讀寫階段,使用複數個從裝置中的複數個工作時脈頻率中最低者(即,第二操作頻率)作為時脈信號的時脈頻率來進行讀寫,其中主裝置係以匯流排與複數個從裝置連接,且從裝置的工作時脈頻率是指此從裝置支持的最大時脈頻率。
進一步地,主裝置會檢查其使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功,其中第一操作頻率預設為複數個從裝置的複數個工作時脈頻率中最高者。若檢查結果為成功,則主裝置使用時脈頻率為第一操作頻率的時脈信號對複數個從裝置進行定址,以及主裝置使用時脈頻率為第二操作頻率的時脈信號對複數個從裝置進行資料讀寫,其中第二操作頻
率為複數個從裝置的複數個工作時脈頻率中最低者。若檢查結果為失敗,則降低第一操作頻率,以再次檢查主裝置使用時脈頻率為第一操作頻率的時脈信號向複數個從裝置進行定址是否成功。
簡單地說,若檢查結果為失敗,則會降低第一操作頻率再次進行定址檢查。然後,直到檢查結果成功,便使用那次定址檢查所使用的第一操作頻率來做為之後對複數個從裝置進行定址所使用的時脈頻率,以及使用第二操作頻率作為對複數個從裝置進行資料讀寫的時脈頻率。因此,本發明的技術方案可以增加匯流排系統的整體存取速度與效能。
請參照圖1,圖1是本發明實施例的匯流排系統的示意圖。匯流排系統1包括主裝置11以及複數個從裝置(第一從裝置121、第二從裝置122、第三從裝置123)。主裝置11透過匯流排與第一從裝置121、第二從裝置122、第三從裝置123連接,匯流排傳遞用於傳遞串列時脈信號SCL與各種資料SDA。匯流排通常會設置有電阻R1、R2,且電阻R1、R2的連接處接收系統電壓VDD,以避免串列時脈信號SCL與資料SDA之間的干擾,即電阻R1、R2作為上拉電阻,以區隔匯流排上的時脈信號SCL與資料SDA。在此實施例中,複數個從裝置以三個從裝置為例進行說明,但本發明不以從裝置的數量為限制。
請接著參照圖2,圖2是本發明實施例的主裝置向從裝置進行資料寫入所傳送的資料框(data frame)的示意圖。主裝置向從裝置行資料寫入所傳送的資料框2包括依時序排列的定址資訊子框21、寫入資料子框22與結束子框23。主裝置對從裝置進行資料存取的完整流程包括了定址階段與讀寫階段,定址資訊子框21為定址階段所傳遞的資訊,寫入資料子框22為讀寫階段所傳遞的資料,以及結束子框23用於結束資料存取的完整流程。
於本發明中,主裝置進行定址資訊子框21的傳遞(即執行定址階段)時會使用檢查結果為成功時的第一操作頻率作為時脈頻率,主裝置進行寫入
資料子框22的傳遞(即執行讀寫階段)時會使用第二操作頻率(複數個從裝置的複數個工作時脈頻率中最小者)作為時脈頻率,主裝置進行結束子框23的傳遞時則使用檢查結果為成功時的第一操作頻率作為時脈頻率。
定址資訊子框21中的內容依時序分別為起始位元ST、從裝置的裝置位址信號SLA、寫入位元Wr、從裝置的回應位元AKS(對應於裝置位址信號SLA)與連續多組從裝置的暫存器位址信號RegAdd1、RegAdd2、...、RegAddn與從裝置的回應位元AKS(對應於暫存器位址信號RegAdd1、RegAdd2、...、RegAddn)的組合,其中n為從裝置的暫存器數量。寫入資料子框22中的內容依時序分別為連續多組要寫入從裝置的寫入資料WD1、WD2、...、WDm與從裝置的回應位元AKS(對應於寫入資料WD1、WD2、...、WDm)的組合,其中m為要寫入從裝置的資料筆數。結束子框23則包括停止位元SP。
請接著參照圖3,圖3是本發明實施例的主裝置向從裝置進行資料讀取所傳送的資料框的示意圖。主裝置向從裝置行資料讀取所傳送的資料框3包括依時序排列的定址資訊子框31、讀取資料子框32與結束子框33。主裝置對從裝置進行資料存取的完整流程包括了定址階段與讀寫階段,定址資訊子框31為定址階段所傳遞的資訊,讀取資料子框32為讀寫階段所傳遞的資料,以及結束子框33用於結束資料存取的完整流程。
於本發明中,主裝置進行定址資訊子框31的傳遞(即執行定址階段)時會使用檢查結果為成功時的第一操作頻率作為時脈頻率,主裝置進行讀取資料子框32的傳遞(即執行讀寫階段)時會使用第二操作頻率(複數個從裝置的複數個工作時脈頻率中最小者)作為時脈頻率,主裝置進行結束子框33的傳遞時則使用檢查結果為成功時的第一操作頻率作為時脈頻率。
定址資訊子框31中的內容依時序分別為起始位元ST、從裝置的裝置位址信號SLA、寫入位元Wr、從裝置的回應位元AKS(對應於裝置位址信號
SLA)、連續多組從裝置的暫存器位址信號RegAdd1、RegAdd2、...、RegAddn與從裝置的回應位元AKS(對應於暫存器位址信號RegAdd1、RegAdd2、...、RegAddn)的組合、重複起始位元RS、從裝置的裝置位址信號SLA、讀取位元Rd與從裝置的回應位元AKS(對應於裝置位址信號SLA),其中n為從裝置的暫存器數量。讀取入資料子框32中的內容依時序分別為連續多組自從裝置讀取的讀取資料RD1、RD2、...、RDm與主裝置的回應位元AKM(對應於讀取資料RD1、RD2、...、RDm)的組合,其中m為要寫入從裝置的資料筆數。結束子框33則包括停止位元SP。
請接著參照圖4,圖4是本發明實施例的主裝置中的時脈頻率選擇裝置的方塊圖。用於匯流排系統的主裝置中的時脈頻率選擇裝置4包括定址檢查單元41、頻率控制單元42與時脈信號產生單元43,其中頻率控制單元42電性連接於定址檢查單元41及時脈信號產生單元43之間。定址檢查單元41用於檢查主裝置使用時脈頻率為第一操作頻率的時脈信號SCL向複數個從裝置進行定址是否成功(透過傳遞與接收資料SDA,其檢查定址是否成功的一個實施例如同圖6的說明所述),其中第一操作頻率預設為複數個從裝置的複數個工作時脈頻率中最高者,且從裝置的工作時脈頻率是指從裝置支持的最大時脈頻率。舉例來說,若有三個從裝置的工作時脈頻率分別為400KHz、100KHz與50KHz,則第一操作頻率預設為400KHz。
頻率控制單元42根據檢查結果產生第一操作頻率設定信號,以及產生時脈頻率選擇信號,其中檢查結果由定址檢查單元41產生,且用於表示主裝置使用時脈頻率為第一操作頻率的時脈信號SCL向複數個從裝置進行定址是否成功。時脈信號產生單元43根據第一操作頻率設定信號設定時脈信號SCL的第一操作頻率,以及根據時脈頻率選擇信號設定時脈頻率為第一操作頻率或第二操作頻率。
若檢查結果成功,頻率控制單元42控制時脈信號產生單元43讓主裝置使用時脈頻率為第一操作頻率的時脈信號SCL對複數個從裝置進行定址,以及頻率控制單元42控制時脈信號產生單元43讓主裝置使用時脈頻率為第二操作頻率的時脈信號SCL對複數個從裝置進行資料讀寫,其中第二操作頻率為複數個從裝置的複數個工作時脈頻率中最低者。舉例來說,若有三個從裝置的工作時脈頻率分別為400KHz、100KHz與50KHz,則第二操作頻率預設為50KHz。
若檢查結果為失敗,則頻率控制單元42產生第一操作頻率設定信號降低第一操作頻率,以讓定址檢查單元再次檢查主裝置使用時脈頻率為第一操作頻率的時脈信號SCL向複數個從裝置進行定址是否成功。於多次定址檢查後,直到檢查結果成功,主裝置便使用那次定址檢查所使用的第一操作頻率來做為之後對複數個從裝置進行定址所使用的時脈頻率,以及使用第二操作頻率作為對複數個從裝置進行資料讀寫的時脈頻率。
在每一次檢查結果為失敗時,調低第一操作頻率的做法有下述幾種實現方式,且本發明不以此為限制。在一個實施例中,複數個工作時脈頻率中最高者為複數個工作時脈頻率中最低者的2n倍,n為整數,且降低的第一操作頻率為複數個工作時脈頻率中最高者的(1/2)i倍,其中i為檢查定址是否成功的檢查次數,且此做法可以使用除頻器來實現。在另一個實施例中,降低的第一操作頻率為複數個從裝置的複數個工作時脈頻率中由高至低排序的第i+1者,其中i為檢查定址是否成功的檢查次數。在又一個實施例中,複數個工作時脈頻率中最高者為複數個工作時脈頻率中最低者的K倍,K為整數,且降低的第一操作頻率為複數個工作時脈頻率中最低者的(K-i)倍,其中i為檢查定址是否成功的檢查次數。
進一步地,主裝置針對每一個從裝置進行定址檢查的方式如下。定址檢查單元41使主裝置傳送起始位元、從裝置的裝置位址信號與寫入位元給從裝置,且定址檢查單元41判斷主裝置是否收到從裝置基於起始位元、裝置位址
信號與寫入位元傳送的回應位元。如果定址檢查單元41判斷沒有收到回應位元,則使檢查結果為失敗;如果有收到回應位元,則定址檢查單元41使主裝置傳送從裝置的識別暫存器位址信號給從裝置,且定址檢查單元41判斷主裝置是否收到從裝置基於識別暫存器位址信號傳送的另一回應位元。
如果定址檢查單元41判斷沒有收到另一回應位元,則使檢查結果為失敗;如果有收到另一回應位元,則定址檢查單元41使主裝置傳送重複起始位元、從裝置的裝置位址信號與讀取位元,以讀取從裝置的識別並傳送主裝置的回應位元給從裝置,且定址檢查單元41會接著判斷從裝置的識別是否正確。如果從裝置的識別不正確,則使檢查結果為失敗;如果從裝置的識別正確,則定址檢查單元使主裝置傳送停止位元,以結束對此從裝置的定址檢查。當每一個從裝置進行定址檢查都成功通過時,檢查結果才會為成功,只要有一個從裝置的定址檢查沒有成功通過,則使檢查結果為失敗。
請參照圖5,圖5是本發明實施例的用於匯流排系統的主裝置中的時脈頻率選擇方法的流程圖。於此實施例中,共有三個從裝置,且三個從裝置的工作時脈頻率分別為400KHz、100KHz與50KHz,其中400KH為50KHz的8倍,第一操作頻率預設為400KHz,第二操作頻率則為50KHz,且採用降低第一操作頻率的方式為將前一次的第一操作頻率除以2。
首先,在步驟S501中,主裝置使用400KHz的時脈頻率的時脈信號向三個從裝置進行定址檢查,並產生相應的檢查結果。在步驟S502中,判斷檢查結果為成功或失敗。若檢查結果為成功,則在步驟S503中,主裝置在定址階段使用400KHz的時脈頻率,以及在讀寫階段使用50KHz的時脈頻率;否則,則將第一操作頻率降低為200KHz,並執行步驟S504。
在步驟S504中,主裝置使用200KHz的時脈頻率的時脈信號向三個從裝置進行定址檢查,並產生相應的檢查結果。在步驟S505中,判斷檢查結果
為成功或失敗。若檢查結果為成功,則在步驟S506中,主裝置在定址階段使用200KHz的時脈頻率,以及在讀寫階段使用50KHz的時脈頻率;否則,則將第一操作頻率降低為100KHz,並執行步驟S507。
在步驟S507中,主裝置使用100KHz的時脈頻率的時脈信號向三個從裝置進行定址檢查,並產生相應的檢查結果。在步驟S508中,判斷檢查結果為成功或失敗。若檢查結果為成功,則在步驟S509中,主裝置在定址階段使用100KHz的時脈頻率,以及在讀寫階段使用50KHz的時脈頻率;否則,則執行步驟S510,主裝置在定址階段與讀寫階段都使用50KHz的時脈頻率。
之後,請參照圖6,圖6是本發明實施例的時脈頻率選擇方法的定址檢查的流程圖。於此實施例中,共有三個從裝置,分別為第一從裝置、第二從裝置與第三從裝置,但本發明不以此為限制。首先,在步驟S611中,主裝置傳送起始位元ST、第一從裝置的裝置位址信號SLA1與寫入位元Wr給第一從裝置。然後,在步驟S612中,判斷主裝置是否收到第一從裝置基於起始位元ST、裝置位址信號SLA1與寫入位元Wr傳送的回應位元ASK1。如果定址檢查單元41判斷沒有收到回應位元,則使檢查結果為失敗;如果有收到回應位元,則執行步驟S613。在步驟S613中,主裝置傳送第一從裝置的識別暫存器位址信號給第一從裝置。在步驟S614中,判斷主裝置是否收到第一從裝置基於識別暫存器位址信號傳送的另一回應位元ASK1。如果定址檢查單元41判斷沒有收到另一回應位元ASK1,則使檢查結果為失敗;如果有收到另一回應位元ASK1,則執行步驟S615。在步驟S615,主裝置傳送重複起始位元RS、第一從裝置的裝置位址信號SLA1與讀取位元Rd。在步驟S616中,主裝置讀取第一從裝置的識別並傳送主裝置的回應位元AKM給第一從裝置。在步驟S617中,判斷第一從裝置的識別是否正確。如果第一從裝置的識別不正確,則使檢查結果為失敗;如果從裝置的識別正確,執行步
驟S618,且在步驟S618中,主裝置傳送停止位元SP,以結束對第一從裝置的定址檢查。
步驟S621至步驟S628以及步驟S631至步驟S638,則可以依照步驟S611至步驟S618類推,故不贅述。當第一從裝置、第二從裝置與第三從裝置分別被定址檢查後,且成功通過檢查,則使檢查結果為成功。只要有其中一個從裝置的定址檢查沒有成功通過,則使檢查結果為失敗。
綜合以上所述,本發明實施例提供的用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法,其可以讓以ARM架構的微控制器在作為主裝置時,在同一條I2C匯流排上,對外部的不同多個I2C從裝置使用不同位元率來進行定址與讀寫,因此,能夠有效地提升整個I2C匯流排系統的存取速度與效能。
應當理解,本文描述的示例和實施例僅用於說明目的,並且鑑於其的各種修改或改變將被建議給本領域技術人員,並且將被包括在本申請的精神和範圍以及所附權利要求的範圍內。
1:匯流排系統
11:主裝置
121:第一從裝置
122:第二從裝置
123:第三從裝置
SCL:時脈信號
SDA:資料
VDD:系統電壓
R1、R2:電阻
Claims (10)
- 一種用於一匯流排系統的一主裝置中的時脈頻率選擇裝置,其中該匯流排系統包括該主裝置與複數個從裝置,該主裝置係以一匯流排與該等從裝置連接,且該時脈頻率選擇裝置包括:一定址檢查單元,用於檢查該主裝置使用一時脈頻率為一第一操作頻率的一時脈信號向該等從裝置進行定址是否成功,其中該第一操作頻率預設為該等從裝置的複數個工作時脈頻率中最高者,且該從裝置的該工作時脈頻率是指該從裝置支持的一最大時脈頻率;一頻率控制單元,電性連接該定址檢查單元,根據用於表示該主裝置使用該時脈頻率為該第一操作頻率的該時脈信號向該等從裝置進行定址是否成功的一檢查結果產生一第一操作頻率設定信號,以及產生一時脈頻率選擇信號;以及一時脈信號產生單元,電性連接該頻率控制單元,根據該第一操作頻率設定信號設定該時脈信號的該第一操作頻率,以及根據該時脈頻率選擇信號設定該時脈頻率為該第一操作頻率或一第二操作頻率;其中若該檢查結果為成功,則該頻率控制單元控制該時脈信號產生單元讓該主裝置使用該時脈頻率為該第一操作頻率的該時脈信號對該等從裝置進行定址,以及該頻率控制單元控制該時脈信號產生單元讓該主裝置使用該時脈頻率為該第二操作頻率的該時脈信號對該等從裝置進行資料讀寫,其中該第二操作頻率為該等從裝置的複數個工作時脈頻率中最低者; 其中若該檢查結果為失敗,則該頻率控制單元產生該第一操作頻率設定信號以降低該第一操作頻率,以讓該定址檢查單元再次檢查該主裝置使用該時脈頻率為該第一操作頻率的該時脈信號向該等從裝置進行定址是否成功。
- 如請求項1所述的時脈頻率選擇裝置,其中該等工作時脈頻率中最高者為該等工作時脈頻率中最低者的2n倍,n為整數,且降低的該第一操作頻率為該等工作時脈頻率中最高者的(1/2)i倍,其中i為檢查定址是否成功的一檢查次數。
- 如請求項1所述的時脈頻率選擇裝置,其中降低的該第一操作頻率為該等從裝置的該等工作時脈頻率中由高至低排序的第i+1者,其中i為檢查定址是否成功的一檢查次數。
- 如請求項1所述的時脈頻率選擇裝置,其中該等工作時脈頻率中最高者為該等工作時脈頻率中最低者的K倍,K為整數,且降低的該第一操作頻率為該等工作時脈頻率中最低者的(K-i)倍,其中i為檢查定址是否成功的一檢查次數。
- 如請求項1所述的時脈頻率選擇裝置,其中針對每一個該等從裝置進行定址檢查包括:該定址檢查單元使該主裝置傳送一起始位元、該從裝置的一裝置位址信號與一寫入位元給該從裝置,且該定址檢查單元判斷該主裝置是否收到該從裝置基於該起始位元、該從裝置的該裝置位址信號與該寫入位元傳送的一第一回應位元; 該定址檢查單元使該主裝置傳送該從裝置的一識別暫存器位址信號給該從裝置,且該定址檢查單元判斷該主裝置是否收到該從裝置基於該識別暫存器位址信號傳送的一第二回應位元;該定址檢查單元使該主裝置傳送一重複起始位元、該從裝置的該裝置位址信號與一讀取位元,以讀取該從裝置的一識別並傳送一第三回應位元,且判斷該從裝置的該識別是否正確;以及該定址檢查單元使該主裝置傳送一停止位元。
- 一種主裝置,包括:如請求項1至5其中一項的時脈頻率選擇裝置。
- 如請求項6所述的主裝置,其中該主裝置為一微控制器。
- 一種匯流排系統,包括:如請求項6所述的主裝置;以及該等從裝置。
- 如請求項8所述的匯流排系統,其中該從裝置包括一第一部分電路與一第二部分電路,該第一部分電路為一數位電路,以及該第二部分電路為一類比電路或另一數位電路。
- 一種用於一匯流排系統的一主裝置中的時脈頻率選擇方法,其中該匯流排系統包括該主裝置與複數個從裝置,該主裝置係以一匯流排與該等從裝置連接,且該時脈頻率選擇方法包括:檢查該主裝置使用一時脈頻率為一第一操作頻率的一時脈信號向該等從裝置進行定址是否成功,其中該第一操作頻率預設為該等從裝置的複數個工 作時脈頻率中最高者,且該從裝置的該工作時脈頻率是指該從裝置支持的一最大時脈頻率;若一檢查結果為成功,則該主裝置使用該時脈頻率為該第一操作頻率的該時脈信號對該等從裝置進行定址,以及該主裝置使用該時脈頻率為一第二操作頻率的該時脈信號對該等從裝置進行資料讀寫,其中該第二操作頻率為該等從裝置的複數個工作時脈頻率中最低者;以及若該檢查結果為失敗,則降低該第一操作頻率,以再次檢查該主裝置使用該時脈頻率為該第一操作頻率的該時脈信號向該等從裝置進行定址是否成功。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111115873A TWI833207B (zh) | 2022-04-26 | 2022-04-26 | 用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法 |
CN202211309878.4A CN116991775A (zh) | 2022-04-26 | 2022-10-25 | 用于总线系统的主设备中的时钟频率选择设备与方法 |
US18/095,194 US20230341887A1 (en) | 2022-04-26 | 2023-01-10 | Device and method for selecting clock frequency in master device of bus system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111115873A TWI833207B (zh) | 2022-04-26 | 2022-04-26 | 用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202343271A TW202343271A (zh) | 2023-11-01 |
TWI833207B true TWI833207B (zh) | 2024-02-21 |
Family
ID=88415330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111115873A TWI833207B (zh) | 2022-04-26 | 2022-04-26 | 用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230341887A1 (zh) |
CN (1) | CN116991775A (zh) |
TW (1) | TWI833207B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6202108B1 (en) * | 1997-03-13 | 2001-03-13 | Bull S.A. | Process and system for initializing a serial link between two integrated circuits comprising a parallel-serial port using two clocks with different frequencies |
CN101206625A (zh) * | 2006-12-22 | 2008-06-25 | 普天信息技术研究院 | 一种数据处理主控设备、从设备、系统及方法 |
TW200830108A (en) * | 2006-08-31 | 2008-07-16 | Standard Microsyst Smc | Two-cycle return path clocking |
TW201128348A (en) * | 2009-09-30 | 2011-08-16 | Via Tech Inc | Method for generating multiple serial bus chip selects using single chip select signal and modulation of clock signal frequency |
CN102193889A (zh) * | 2011-06-08 | 2011-09-21 | 杭州国芯科技股份有限公司 | 一种i2c总线转发器及其读写方法 |
US20120159024A1 (en) * | 2010-12-15 | 2012-06-21 | Kabushiki Kaisha Toshiba | Semiconductor apparatus |
US20140025854A1 (en) * | 2011-03-01 | 2014-01-23 | As-International Association E.V. | Bus system having a master and a group of slaves and communication method for interchanging data in said bus system |
CN112860495A (zh) * | 2019-11-12 | 2021-05-28 | 中兴通讯股份有限公司 | 一种i2c从设备的调试方法、i2c主设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023945B (zh) * | 2009-09-22 | 2012-03-28 | 鸿富锦精密工业(深圳)有限公司 | 基于串行外围设备接口总线的设备及其数据传输方法 |
JP2013190961A (ja) * | 2012-03-13 | 2013-09-26 | Fujitsu Ltd | 選択装置、選択方法、及び情報処理装置 |
TW201418933A (zh) * | 2012-11-13 | 2014-05-16 | Accton Technology Corp | 時脈訊號之控制裝置及控制方法 |
TWI551099B (zh) * | 2013-01-22 | 2016-09-21 | 新唐科技股份有限公司 | 通信系統、主控端裝置與通信方法 |
US9959223B2 (en) * | 2013-05-08 | 2018-05-01 | Nxp B.V. | Method and system for interrupt signaling in an inter-integrated circuit (I2C) bus system |
US9841940B2 (en) * | 2015-06-05 | 2017-12-12 | Qualcomm Incorporated | Power reduction through clock management |
US10795399B2 (en) * | 2017-10-20 | 2020-10-06 | Intel Corporation | Device throughput optimization for bus protocols |
-
2022
- 2022-04-26 TW TW111115873A patent/TWI833207B/zh active
- 2022-10-25 CN CN202211309878.4A patent/CN116991775A/zh active Pending
-
2023
- 2023-01-10 US US18/095,194 patent/US20230341887A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6202108B1 (en) * | 1997-03-13 | 2001-03-13 | Bull S.A. | Process and system for initializing a serial link between two integrated circuits comprising a parallel-serial port using two clocks with different frequencies |
TW200830108A (en) * | 2006-08-31 | 2008-07-16 | Standard Microsyst Smc | Two-cycle return path clocking |
CN101206625A (zh) * | 2006-12-22 | 2008-06-25 | 普天信息技术研究院 | 一种数据处理主控设备、从设备、系统及方法 |
TW201128348A (en) * | 2009-09-30 | 2011-08-16 | Via Tech Inc | Method for generating multiple serial bus chip selects using single chip select signal and modulation of clock signal frequency |
US20120159024A1 (en) * | 2010-12-15 | 2012-06-21 | Kabushiki Kaisha Toshiba | Semiconductor apparatus |
US20140025854A1 (en) * | 2011-03-01 | 2014-01-23 | As-International Association E.V. | Bus system having a master and a group of slaves and communication method for interchanging data in said bus system |
CN102193889A (zh) * | 2011-06-08 | 2011-09-21 | 杭州国芯科技股份有限公司 | 一种i2c总线转发器及其读写方法 |
CN112860495A (zh) * | 2019-11-12 | 2021-05-28 | 中兴通讯股份有限公司 | 一种i2c从设备的调试方法、i2c主设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230341887A1 (en) | 2023-10-26 |
TW202343271A (zh) | 2023-11-01 |
CN116991775A (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11953981B2 (en) | Memory module register access | |
JP5351130B2 (ja) | 混合されたタイプのメモリデバイスを動作させるシステムおよび方法 | |
US20080140916A1 (en) | System and method of operating memory devices of mixed type | |
US9519436B1 (en) | Memory erasing method, memory controller, and memory storage apparatus | |
JP2006107710A (ja) | 停電によるプログラムエラーの有無を検出することができる集積回路メモリ装置及び方法 | |
JP6542076B2 (ja) | メモリシステム | |
US9063888B2 (en) | Program code loading and accessing method, memory controller, and memory storage apparatus | |
CN108305654A (zh) | 半导体器件 | |
TWI526818B (zh) | 休眠模式啓動方法、記憶體控制電路單元及儲存裝置 | |
CN105528314B (zh) | 一种数据处理方法及控制设备 | |
US3787815A (en) | Apparatus for the detection and correction of errors for a rotational storage device | |
TWI833207B (zh) | 用於匯流排系統的主裝置中的時脈頻率選擇裝置與方法 | |
JP2021174561A (ja) | 半導体記憶装置 | |
US5410554A (en) | Optical disk apparatus | |
TWI512623B (zh) | 休眠模式啓動方法、記憶體控制電路單元及儲存裝置 | |
KR20220078460A (ko) | Nand 메모리를 위한 데이터 전송 프로토콜에서의 오버헤드 감소 | |
JP2007272551A (ja) | キャッシュメモリ制御装置、方法及びプログラム並びにディスクアレイ装置 | |
JP7500698B2 (ja) | メモリからeccを読み出す回路および方法 | |
US20230195564A1 (en) | Circuit and Method for Reading ECC from Memory | |
JP4742561B2 (ja) | 記憶装置、データ処理システムおよびメモリ制御方法 | |
KR20220112169A (ko) | 반도체 장치 및 연속 독출 방법 | |
JP2015099570A (ja) | コントローラ、記憶装置、および制御方法 | |
JPH05181784A (ja) | データ転送装置 | |
JPH01197860A (ja) | メモリ故障検出回路 | |
JP2006113791A (ja) | 記憶装置、データ処理システムおよび記憶制御方法 |