TW202132981A - Electrical device and communication method - Google Patents

Electrical device and communication method Download PDF

Info

Publication number
TW202132981A
TW202132981A TW109111652A TW109111652A TW202132981A TW 202132981 A TW202132981 A TW 202132981A TW 109111652 A TW109111652 A TW 109111652A TW 109111652 A TW109111652 A TW 109111652A TW 202132981 A TW202132981 A TW 202132981A
Authority
TW
Taiwan
Prior art keywords
electronic device
address
data
addresses
writing
Prior art date
Application number
TW109111652A
Other languages
Chinese (zh)
Other versions
TWI762900B (en
Inventor
王鳳林
邢征北
崔濤
陳兵
Original Assignee
瑞昱半導體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Publication of TW202132981A publication Critical patent/TW202132981A/en
Application granted granted Critical
Publication of TWI762900B publication Critical patent/TWI762900B/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Systems (AREA)

Abstract

An electrical device is coupled to another electrical device via a communication interface. The electrical device executes a writing process to the another electrical device via the communication interface. If a writing failure occurs, the electrical device establishes a related address list associated with the writing process, verifies multiple related addresses in the related address list, and executes the writing process again.

Description

電子裝置以及通訊方法 Electronic device and communication method

本案中所述實施例內容是有關於一種通訊技術,特別關於一種電子裝置以及通訊方法。 The content of the embodiment described in this case relates to a communication technology, particularly an electronic device and a communication method.

隨著通訊技術的發展,兩電子裝置之間可透過各種通訊介面進行訊號傳輸。然而,基於一些因素,訊號傳輸的過程可能會發生干擾。這些干擾會影響到訊號的正確性。倘若所傳輸的訊號或所接收到的訊號不正確,將會使得系統異常運作。 With the development of communication technology, signals can be transmitted between two electronic devices through various communication interfaces. However, due to some factors, interference may occur in the signal transmission process. These interferences will affect the correctness of the signal. If the transmitted signal or received signal is incorrect, the system will operate abnormally.

本案之一些實施方式是關於一種電子裝置。電子裝置透過一通訊介面耦接一另一電子裝置。電子裝置透過通訊介面對另一電子裝置執行一寫入程序。若一寫入失敗發生,電子裝置建立相關於寫入程序的一相關位址列表,校驗相關位址列表中的複數相關位址,且重新執行寫入程序。 Some embodiments of this case are related to an electronic device. The electronic device is coupled to another electronic device through a communication interface. The electronic device executes a writing process to another electronic device through the communication interface. If a write failure occurs, the electronic device creates a related address list related to the write process, verifies the plural related addresses in the related address list, and executes the write process again.

本案之一些實施方式是關於一種通訊方法。通訊方法包含:藉由一電子裝置透過一通訊介面對一另一電子裝置執行一寫入程序;若一寫入失敗發生,藉由電子裝置建立相關於寫入程序的一相關位址列表;以及藉由電子裝置校驗相關位址列表中的複數相關位址,且重新執行寫入程序。 Some implementations of this case are related to a communication method. The communication method includes: using an electronic device to execute a writing process to another electronic device through a communication interface; if a writing failure occurs, creating a related address list related to the writing process by the electronic device; and The electronic device verifies a plurality of related addresses in the related address list, and re-executes the writing process.

綜上所述,本案的電子裝置以及通訊方法,可利用軟體方式進行校驗,且優先校驗相關位址列表中的相關位址。相較於校驗所有位址,本案的電子裝置以及通訊方法可縮短校驗時間,且不需更動硬體架構。 In summary, the electronic device and communication method of this case can be verified by software, and the relevant addresses in the relevant address list are verified first. Compared with verifying all addresses, the electronic device and communication method in this case can shorten the verification time without changing the hardware architecture.

100:通訊系統 100: Communication system

700:通訊方法 700: Communication method

E1:電子裝置 E1: Electronic device

E2:電子裝置 E2: Electronic device

IF:通訊介面 IF: Communication interface

CS:選擇訊號 CS: Select signal

SCLK:時脈訊號 SCLK: clock signal

SI:輸入資料 SI: Input data

SO:輸出資料 SO: output data

CM1:指令 CM1: Command

CM2:指令 CM2: Command

AD1:位址 AD1: address

AD2:位址 AD2: address

DATA1:資料 DATA1: data

DATA2:資料 DATA2: data

S410:操作 S410: Operation

S420:操作 S420: Operation

S510:操作 S510: Operation

S520:操作 S520: Operation

S530:操作 S530: Operation

S540:操作 S540: Operation

S550:操作 S550: Operation

S610:操作 S610: Operation

S620:操作 S620: Operation

S630:操作 S630: Operation

S640:操作 S640: Operation

S710:操作 S710: Operation

S720:操作 S720: Operation

S730:操作 S730: Operation

為讓本案之上述和其他目的、特徵、優點與實施例能夠更明顯易懂,所附圖式之說明如下: In order to make the above and other purposes, features, advantages and embodiments of this case more obvious and understandable, the description of the attached drawings is as follows:

第1圖是依照本案一些實施例所繪示的一通訊系統的示意圖; Figure 1 is a schematic diagram of a communication system according to some embodiments of the present case;

第2圖是依照本案一些實施例所繪示的一讀取程序的示意圖; FIG. 2 is a schematic diagram of a reading procedure according to some embodiments of the present case;

第3圖是依照本案一些實施例所繪示的一寫入程序的示意圖; FIG. 3 is a schematic diagram of a writing procedure according to some embodiments of the present case;

第4圖依照本案一些實施例所繪示的校驗讀取程序的流程圖; Figure 4 is a flow chart of the verification and reading procedure shown in some embodiments of the present case;

第5圖依照本案一些實施例所繪示的校驗寫入程序的流程圖; Figure 5 is a flow chart of the verification write program according to some embodiments of the present case;

第6圖是依照本案一些實施例所繪示的一反相程序的流程圖;以及 Figure 6 is a flow chart of an inversion procedure according to some embodiments of the present case; and

第7圖是依照本案一些實施例所繪示的一通訊方法的流程圖。 Figure 7 is a flowchart of a communication method according to some embodiments of the present case.

在本文中所使用的用詞『耦接』亦可指『電性耦接』,且用詞『連接』亦可指『電性連接』。『耦接』及『連接』亦可指二個或多個元件相互配合或相互互動。 The term "coupled" used in this article can also refer to "electrical coupling", and the term "connected" can also refer to "electrical connection". "Coupling" and "connection" can also refer to two or more components cooperating or interacting with each other.

參考第1圖。第1圖是依照本案一些實施例所繪示的通訊系統100的示意圖。以第1圖示例而言,通訊系統100包含電子裝置E1以及電子裝置E2。 Refer to Figure 1. Fig. 1 is a schematic diagram of a communication system 100 according to some embodiments of the present case. Taking the example of FIG. 1 as an example, the communication system 100 includes an electronic device E1 and an electronic device E2.

在一些實施例中,電子裝置E1為主(master)設備,而電子裝置E2為從(slave)設備。電子裝置E1可透過通訊介面IF耦接電子裝置E2,以與電子裝置E2通訊連接。據此,電子裝置E1可透過通訊介面IF與電子裝置E2進行溝通。舉例而言,電子裝置E1可透過通訊介面IF對電子裝置E2執行讀取程序或寫入程序。也就是說,電子裝置E1可透過通訊介面IF將資料寫入電子裝置E2或讀取電子裝置E2中的資料。在一些實施例中,電子裝置E2可為複數個,且電子裝置E1透過通訊介面IF耦接該些電子裝置E2。 In some embodiments, the electronic device E1 is a master device, and the electronic device E2 is a slave device. The electronic device E1 can be coupled to the electronic device E2 through the communication interface IF to communicate with the electronic device E2. Accordingly, the electronic device E1 can communicate with the electronic device E2 through the communication interface IF. For example, the electronic device E1 can perform a reading process or a writing process on the electronic device E2 through the communication interface IF. In other words, the electronic device E1 can write data into the electronic device E2 or read the data in the electronic device E2 through the communication interface IF. In some embodiments, there may be a plurality of electronic devices E2, and the electronic device E1 is coupled to the electronic devices E2 through the communication interface IF.

在一些實施例中,通訊介面IF可由序列外設介面(Serial Peripheral Interface,SPI)實現,且電子裝置E1以及電子裝置E2可由序列外設介面設備實現。由於序 列外設介面技術僅占用四個訊號線,因此採用序列外設介面技術,可節省晶片面積。 In some embodiments, the communication interface IF can be implemented by a serial peripheral interface (SPI), and the electronic device E1 and the electronic device E2 can be implemented by a serial peripheral interface device. Due to order Serial peripheral interface technology only occupies four signal lines, so the use of serial peripheral interface technology can save chip area.

第2圖是依照本案一些實施例所繪示的一讀取程序的示意圖。如前所述,序列外設介面晶片僅占用四個訊號線。據此,電子裝置E1(或電子裝置E2)可包含四個訊號接腳(pin)。一為選擇接腳,用以接收選擇訊號CS。一為時脈接腳,用以接收時脈訊號SCLK。一為資料輸入接腳,用以接收輸入資料SI。一為資料輸出接腳,用以將輸出資料SO輸出。 FIG. 2 is a schematic diagram of a reading procedure according to some embodiments of the present application. As mentioned earlier, the serial peripheral interface chip only occupies four signal lines. Accordingly, the electronic device E1 (or the electronic device E2) may include four signal pins. One is the selection pin, which is used to receive the selection signal CS. One is the clock pin for receiving the clock signal SCLK. One is a data input pin for receiving input data SI. One is the data output pin, which is used to output the output data SO.

在一些實施例中,當電子裝置E1耦接複數個電子裝置E2時,而選擇訊號CS可用以決定哪個電子裝置E2被選中且電子裝置E1可與此被選中電子裝置E2進行訊號傳輸。以第2圖示例而言,若第2圖所繪示的是其中一電子裝置E2的四個訊號接腳的訊號,當選擇訊號CS具有低邏輯位準時,代表此電子裝置E2被選中。輸入資料SI為此電子裝置E2所接收到的資料。輸出資料SO為此電子裝置E2所輸出的資料。時脈訊號SCLK用以控制資料的接收/傳輸。舉例而言,此電子裝置E2所接收的輸入資料SI可在時脈訊號SCLK的上升邊緣(rising edge)或下降邊緣(falling edge)被接收,或此電子裝置E2所輸出的輸出資料SO可在時脈訊號SCLK的上升邊緣或下降邊緣被輸出。 In some embodiments, when the electronic device E1 is coupled to a plurality of electronic devices E2, the selection signal CS can be used to determine which electronic device E2 is selected and the electronic device E1 can perform signal transmission with the selected electronic device E2. Taking the example of Figure 2, if Figure 2 shows the signals of the four signal pins of one of the electronic devices E2, when the selection signal CS has a low logic level, it means that the electronic device E2 is selected . The input data SI is the data received by the electronic device E2. The output data SO is the data output by the electronic device E2. The clock signal SCLK is used to control data reception/transmission. For example, the input data SI received by the electronic device E2 can be received at the rising edge or falling edge of the clock signal SCLK, or the output data SO output by the electronic device E2 can be received at The rising edge or falling edge of the clock signal SCLK is output.

以第2圖示例而言,若電子裝置E1執行讀取程序,電子裝置E1會將輸入訊號SI輸出給電子裝置E2。輸入訊號SI包含指令CM1(0x01)以及位址AD1。據此,電子裝 置E2可依據指令CM1以及位址AD1將相應於位址AD1的資料DATA1輸出給電子裝置E1,以完成電子裝置E1所執行的讀取程序。 Taking the example of FIG. 2 as an example, if the electronic device E1 executes the reading process, the electronic device E1 will output the input signal SI to the electronic device E2. The input signal SI includes the command CM1 (0x01) and the address AD1. Accordingly, electronic equipment Setting E2 can output the data DATA1 corresponding to the address AD1 to the electronic device E1 according to the command CM1 and the address AD1, so as to complete the reading procedure executed by the electronic device E1.

參考第3圖。第3圖是依照本案一些實施例所繪示的一寫入程序的示意圖。 Refer to Figure 3. FIG. 3 is a schematic diagram of a writing process according to some embodiments of the present application.

以第3圖示例而言,若電子裝置E1執行寫入程序,電子裝置E1會將輸入訊號SI輸出給電子裝置E2。輸入訊號SI包含指令CM2(0x02)、位址AD2以及資料DATA2。據此,依據指令CM2,來自電子裝置E1的資料DATA2將寫入電子裝置E2的位址AD2,以完成電子裝置E1所執行的寫入程序。 Taking the example of FIG. 3 as an example, if the electronic device E1 executes the writing process, the electronic device E1 will output the input signal SI to the electronic device E2. The input signal SI includes command CM2 (0x02), address AD2 and data DATA2. Accordingly, according to the command CM2, the data DATA2 from the electronic device E1 will be written into the address AD2 of the electronic device E2 to complete the writing process executed by the electronic device E1.

然而,在訊號傳輸過程中,可能會因為干擾使得訊號發生改變。在這個情況下,通訊系統100可能會異常運作。 However, during the signal transmission process, the signal may change due to interference. In this case, the communication system 100 may operate abnormally.

一併參考第2圖以及第4圖。第4圖依照本案一些實施例所繪示的校驗讀取程序的流程圖。在讀取過程中,若指令CM1、位址AD1或資料DATA1的電位發生改變,可能會造成讀取到的資料錯誤。針對此,本案的通訊系統100可利用軟體的方式校驗讀取程序。 Refer to Figure 2 and Figure 4 together. Figure 4 is a flow chart of the verification and reading procedure shown in some embodiments of the present case. During the reading process, if the potential of the command CM1, address AD1 or data DATA1 changes, it may cause errors in the data read. In response to this, the communication system 100 of this case can use software to verify the reading program.

在操作S410中,電子裝置E1對電子裝置E2執行讀取程序,以分別於兩個時間點讀取電子裝置E2的位址AD1中的已寫入資料。 In operation S410, the electronic device E1 executes a reading procedure on the electronic device E2 to read the written data in the address AD1 of the electronic device E2 at two time points, respectively.

在操作S420中,判斷於第一時間點以及第二時間點所分別讀取到的兩讀取資料是否相同,以判斷讀取程序 是否成功。舉例而言,若兩時間點的讀取資料相同,代表讀取程序成功。若兩時間點的讀取資料不相同,代表讀取程序失敗。在讀取程序失敗的情況下,將再次進入操作S410以重新執行讀取程序。也就是說,電子裝置E1會分別於再接下來的兩個時間點再次讀取電子裝置E2的位址AD1的已寫入資料。接著,再次進入操作S420。 In operation S420, it is determined whether the two read data respectively read at the first time point and the second time point are the same to determine the reading procedure whether succeed. For example, if the read data at the two time points are the same, it means that the read process is successful. If the reading data at the two time points are not the same, it means that the reading procedure has failed. In the case that the reading procedure fails, operation S410 will be entered again to re-execute the reading procedure. In other words, the electronic device E1 will read the written data of the address AD1 of the electronic device E2 again at the next two time points. Then, enter operation S420 again.

一併參考第3圖以及第5圖。第5圖依照本案一些實施例所繪示的校驗寫入程序的流程圖。在寫入取過程中,若指令CM2或資料DATA2的電位發生改變,可能會造成寫入的資料錯誤。若位址AD2的電位發生改變,可能會造成將資料寫入錯誤的位址。針對此,本案的通訊系統100可利用軟體的方式校驗寫入程序。 Refer to Figure 3 and Figure 5 together. Figure 5 is a flow chart of the verification write procedure according to some embodiments of the present case. During the writing and fetching process, if the potential of the command CM2 or the data DATA2 changes, it may cause the written data error. If the potential of the address AD2 changes, it may cause data to be written to the wrong address. In response to this, the communication system 100 of this case can verify the writing program by means of software.

在操作S510中,電子裝置E1將指令CM2、位址AD2以及預設要寫入的資料DATA2傳送至電子裝置E2。基於指令CM2,預設要寫入的資料DATA2被寫入電子裝置E2的位址AD2。 In operation S510, the electronic device E1 transmits the command CM2, the address AD2, and the preset data DATA2 to be written to the electronic device E2. Based on the command CM2, the preset data DATA2 to be written is written into the address AD2 of the electronic device E2.

在操作S520中,電子裝置E1判斷是否寫入成功。舉例而言,電子裝置E1讀取位址AD2中的已寫入資料,且判斷已寫入資料是否相同於預設要寫入的資料DATA2。若位址AD2中的已寫入資料相同於預設要寫入的資料DATA2,判斷寫入成功。在這個情況下,寫入程序結束。若位址AD2中的已寫入資料相異於預設要寫入的資料DATA2,判斷寫入失敗。在這個情況下,進入操作S530。 In operation S520, the electronic device E1 determines whether the writing is successful. For example, the electronic device E1 reads the written data in the address AD2, and determines whether the written data is the same as the preset data DATA2 to be written. If the written data in the address AD2 is the same as the preset data DATA2 to be written, it is judged that the writing is successful. In this case, the writing procedure ends. If the written data in the address AD2 is different from the preset data DATA2 to be written, it is judged that the writing has failed. In this case, proceed to operation S530.

在操作S530中,電子裝置E1更判斷位址AD2中的已寫入資料是否相同於位址AD2的原始資料。若位址AD2中的已寫入資料相異於位址AD2的原始資料,再次進入操作S510。電子裝置E1依據指令CM2將資料DATA2重新寫入電子裝置E2的位址AD2。也就是說,當判斷位址AD2中的已寫入資料不同於位址AD2的原始資料時,就直接進行重寫。若已寫入資料相同於位址AD2的原始資料,進入操作S540。 In operation S530, the electronic device E1 further determines whether the written data in the address AD2 is the same as the original data in the address AD2. If the written data in the address AD2 is different from the original data in the address AD2, operation S510 is entered again. The electronic device E1 rewrites the data DATA2 into the address AD2 of the electronic device E2 according to the command CM2. In other words, when it is judged that the written data in the address AD2 is different from the original data in the address AD2, the rewriting is directly performed. If the written data is the same as the original data at the address AD2, enter operation S540.

在操作S540中,基於位址AD2,建立相關於寫入程序的相關位址列表。具體而言,若此寫入程序的位址AD2有N個(例如:8個)位元,該N個(例如:8個)位元將分別執行反相程序,以產生電子裝置E2的N個(例如:8個)相關位址。此N個(例如:8個)相關位址用以建立此寫入程序的相關位址列表。 In operation S540, based on the address AD2, a list of related addresses related to the writing process is established. Specifically, if the address AD2 of the write program has N (for example: 8) bits, the N (for example: 8) bits will be inverted respectively to generate the N of the electronic device E2. (For example: 8) related addresses. The N (for example: 8) related addresses are used to create a list of related addresses for the writing process.

參考第6圖。第6圖是依照本案一些實施例所繪示的一反相程序的流程圖。在操作S610中,n對應於位址AD2的第n個位元且將n設為1。在操作S620中,將第n個位元的邏輯值反相(例如:邏輯值1轉為邏輯值0,邏輯值0轉為邏輯值1)。在操作S630中,將n+1設為新的n。在操作S640中,判斷新的n(原n+1)是否大於N。若是,反相程序結束。若否,回到操作S620,以依據更新後的n對第n個位元執行反相程序,進而分析出至少一相關位址。 Refer to Figure 6. Figure 6 is a flow chart of an inversion procedure according to some embodiments of the present case. In operation S610, n corresponds to the nth bit of the address AD2 and n is set to 1. In operation S620, the logic value of the nth bit is inverted (for example, logic value 1 is converted to logic value 0, and logic value 0 is converted to logic value 1). In operation S630, n+1 is set as a new n. In operation S640, it is determined whether the new n (original n+1) is greater than N. If yes, the inversion procedure ends. If not, return to operation S620 to perform an inversion procedure on the nth bit according to the updated n, and then analyze at least one relevant address.

舉例而言。若位址AD2為0 0 0 0 1 0 0 1,將第1個位元進行反相後產生第一個相關位址為0 0 0 0 1 0 0 0,將第2 個位元進行反相後產生第二個相關位址為0 0 0 0 1 0 1 1,將第3個位元進行反相後產生第三個相關位址為0 0 0 0 1 1 0 1,將第4個位元進行反相後產生第四個相關位址為0 0 0 0 0 0 0 1,將第5個位元進行反相後產生第五個相關位址為0 0 0 1 1 0 0 1,將第6個位元進行反相後產生第六個相關位址為0 0 1 0 1 0 0 1,將第7個位元進行反相後產生第七個相關位址為0 1 0 0 1 0 0 1,將第8個位元進行反相後產生第八個相關位址1 0 0 0 1 0 0 1。等效而言,上述產生的相關位址中的其中一位元與位址AD2的相應位元不相同,相關位址中的其他位元與位址AD2的其他相應位元相同。上述8個相關位址可用以建立相關位址列表。換句話說,相關位址列表包含上述8個相關位址。 For example. If the address AD2 is 0 0 0 0 1 0 0 1, the first bit is inverted and the first related address is 0 0 0 0 1 0 0 0, and the second After inverting one bit, the second related address is 0 0 0 0 1 0 1 1. Inverting the third bit, the third related address is 0 0 0 0 1 1 0 1 , After inverting the 4th bit, the fourth relevant address is generated as 0 0 0 0 0 0 0 1. Inverting the 5th bit, the fifth relevant address is generated as 0 0 0 1 1 0 0 1. Invert the 6th bit to generate the sixth relevant address as 0 0 1 0 1 0 0 1. Invert the 7th bit to generate the seventh relevant address as 0 1 0 0 1 0 0 1. Invert the eighth bit to generate the eighth related address 1 0 0 0 1 0 0 1. Equivalently speaking, one of the bits in the related address generated above is different from the corresponding bit of the address AD2, and the other bits in the related address are the same as other corresponding bits of the address AD2. The above 8 related addresses can be used to build a list of related addresses. In other words, the related address list contains the above 8 related addresses.

再次參考第5圖。在操作S550中,電子裝置E1讀取相關位址列表中的相關位址,以判斷該N個相關位址是否發生資料異常。若其中一個相關位址被判斷出發生資料異常,將此相關位址的已寫入資料回復為此相關位址的原始資料,且再次進入操作S510。在一些實施中,相關位址或所有位址的原始資料均會備份,當操作S520判斷為寫入成功後,位址AD2於備份中相應的內容才會更新成資料DATA2。 Refer to Figure 5 again. In operation S550, the electronic device E1 reads the related addresses in the related address list to determine whether the N related addresses have data abnormalities. If one of the related addresses is judged to have a data abnormality, the written data of the related address is restored to the original data of the related address, and operation S510 is entered again. In some implementations, the original data of the relevant address or all addresses will be backed up, and the corresponding content of the address AD2 in the backup will be updated to the data DATA2 when it is determined that the writing is successful in operation S520.

電子裝置E1依據指令CM2將資料DATA2重新寫入電子裝置E2的位址AD2。也就是說,在判斷寫入失敗發生且建立好相關位址列表後,電子裝置E1會校驗相關位址 列表中的該些(例如:8個)相關位址,且重新執行該寫入程序。 The electronic device E1 rewrites the data DATA2 into the address AD2 of the electronic device E2 according to the command CM2. That is to say, after judging that the write failure has occurred and the related address list is established, the electronic device E1 will verify the related address These (for example: 8) related addresses in the list, and re-execute the writing procedure.

在一些相關技術中,是配置額外的校驗電路以進行校驗。然而,大部分的協定或設備並不支援額外的校驗電路。另外,配置額外的校驗電路會有成本上升以及電路面積變大的問題。相較於此些相關技術,本案的通訊系100是利用軟體方式對訊號的正確性進行校驗。也就是說,本案的通訊系100不需配置額外的校驗電路。 In some related technologies, additional verification circuits are configured to perform verification. However, most protocols or devices do not support additional verification circuits. In addition, the configuration of an additional verification circuit will cause the problem of increased cost and larger circuit area. Compared with these related technologies, the communication system 100 in this case uses software to verify the correctness of the signal. In other words, the communication system 100 in this case does not need to be equipped with additional verification circuits.

再者,本案的電子裝置E1優先校驗相關位址列表中的相關位址,而非校驗所有位址。在一些實施例中,由於訊號錯誤的機率很低,因此大部分的錯誤可在校驗完相關位址列表中的相關位址(例如:上述8個相關位址)後即能確認。據此,本案的通訊系100可在不必校驗所有位址的情況下確認寫入錯誤,進而縮短校驗時間。 Furthermore, the electronic device E1 in this case first checks the relevant addresses in the relevant address list instead of checking all addresses. In some embodiments, since the probability of signal error is very low, most of the errors can be confirmed after checking the relevant addresses in the relevant address list (for example, the above-mentioned 8 relevant addresses). Accordingly, the communication system 100 of this case can confirm write errors without having to verify all addresses, thereby shortening the verification time.

參考第7圖。第7圖是依照本案一些實施例所繪示的通訊方法700的流程圖。通訊方法700包含操作S710、S720以及S730。在一些實施例中,通訊方法700被應用於第1圖的通訊系統100中,但本案不以此為限。為易於理解,通訊方法700將搭配第1圖進行討論。 Refer to Figure 7. FIG. 7 is a flowchart of a communication method 700 according to some embodiments of this case. The communication method 700 includes operations S710, S720, and S730. In some embodiments, the communication method 700 is applied to the communication system 100 in FIG. 1, but this case is not limited to this. For ease of understanding, the communication method 700 will be discussed in conjunction with Figure 1.

在操作S710中,藉由電子裝置E1透過通訊介面IF對電子裝置E2執行寫入程序。在一些實施例中,通訊介面IF由序列外設介面實現。 In operation S710, the electronic device E1 performs a writing process on the electronic device E2 through the communication interface IF. In some embodiments, the communication interface IF is implemented by a serial peripheral interface.

在操作S720中,若寫入失敗發生,藉由電子裝置E1建立相關於寫入程序的相關位址列表。在一些實施例 中,將寫入程序的位址AD2的N個(例如:8個)位元分別執行反相程序,以產生N個(例如:8個)相關位址,進而依據此N個(例如:8個)相關位址建立相關位址列表。 In operation S720, if a writing failure occurs, the electronic device E1 is used to create a related address list related to the writing process. In some embodiments In the process, the N (for example: 8) bits of the address AD2 written in the program are respectively inverted to generate N (for example: 8) related addresses, and then according to the N (for example: 8) A) related addresses to establish a list of related addresses.

在操作S730中,藉由電子裝置E1校驗相關位址列表中的該N個相關位址,且重新執行寫入程序。 In operation S730, the electronic device E1 verifies the N related addresses in the related address list, and re-executes the writing process.

綜上所述,本案的電子裝置以及通訊方法,可利用軟體方式進行校驗,且優先校驗相關位址列表中的相關位址。相較於校驗所有位址,本案的電子裝置以及通訊方法可縮短校驗時間,且不需更動硬體架構。 In summary, the electronic device and communication method of this case can be verified by software, and the relevant addresses in the relevant address list are verified first. Compared with verifying all addresses, the electronic device and communication method in this case can shorten the verification time without changing the hardware architecture.

各種功能性元件和方塊已於此公開。對於本技術領域具通常知識者而言,功能方塊可由電路(不論是專用電路,或是於一或多個處理器及編碼指令控制下操作的通用電路)實現,其一般而言包含用以相應於此處描述的功能及操作對電氣迴路的操作進行控制之電晶體或其他電路元件。如將進一步理解地,一般而言電路元件的具體結構與互連,可由編譯器(compiler),例如暫存器傳遞語言(Register Transfer Language,RTL)編譯器決定。暫存器傳遞語言編譯器對與組合語言代碼(assembly language code)相當相似的指令碼(script)進行操作,將指令碼編譯為用於佈局或製作最終電路的形式。確實地,暫存器傳遞語言以其促進電子和數位系統設計過程中的所扮演的角色和用途而聞名。 Various functional elements and blocks have been disclosed here. For those skilled in the art, functional blocks can be implemented by circuits (whether dedicated circuits or general-purpose circuits operated under the control of one or more processors and coded instructions), which generally include corresponding The functions and operations described here are transistors or other circuit elements that control the operation of an electrical circuit. As will be further understood, in general, the specific structure and interconnection of circuit elements can be determined by a compiler (compiler), such as a register transfer language (RTL) compiler. The register transfer language compiler operates on scripts that are quite similar to assembly language codes, and compiles the scripts into a form used for layout or making final circuits. Indeed, the register transfer language is known for its role and use in facilitating the design of electronic and digital systems.

雖然本案已以實施方式揭示如上,然其並非用以限定本案,任何本領域具通常知識者,在不脫離本案之精神 和範圍內,當可作各種之更動與潤飾,因此本案之保護範圍當視後附之申請專利範圍所界定者為準。 Although this case has been disclosed as above by way of implementation, it is not intended to limit the case. Anyone with ordinary knowledge in the field will not deviate from the spirit of the case. Within the scope and scope, various changes and modifications can be made. Therefore, the scope of protection in this case shall be subject to the scope of the attached patent application.

100:通訊系統 100: Communication system

E1:電子裝置 E1: Electronic device

E2:電子裝置 E2: Electronic device

IF:通訊介面 IF: Communication interface

Claims (10)

一種電子裝置,透過一通訊介面耦接一另一電子裝置,其中該電子裝置透過該通訊介面對該另一電子裝置執行一寫入程序,其中若一寫入失敗發生,該電子裝置建立相關於該寫入程序的一相關位址列表,校驗該相關位址列表中的複數相關位址,且重新執行該寫入程序。 An electronic device is coupled to another electronic device through a communication interface, wherein the electronic device executes a writing process to the other electronic device through the communication interface, wherein if a writing failure occurs, the electronic device establishes a correlation with A related address list of the writing procedure is checked, the plural related addresses in the related address list are verified, and the writing procedure is executed again. 如請求項1所述的電子裝置,其中若相應於該寫入失敗的一位址具有N個位元,該些相關位址的數量為N,其中N為正整數。 The electronic device according to claim 1, wherein if the bit address corresponding to the write failure has N bits, the number of the related addresses is N, where N is a positive integer. 如請求項1所述的電子裝置,其中該電子裝置於該寫入程序將一預設資料寫入該另一電子裝置的一位址,讀取該位址中的一已寫入資料,且判斷該已寫入資料是否相同於該預設資料,以判斷該寫入失敗是否發生。 The electronic device according to claim 1, wherein the electronic device writes a preset data into an address of the other electronic device during the writing process, reads a written data in the address, and Determine whether the written data is the same as the preset data to determine whether the write failure occurs. 如請求項3所述的電子裝置,其中若該已寫入資料相異於該預設資料,判斷該寫入失敗發生,該電子裝置判斷該已寫入資料是否相同於該位址的一原始資料。 The electronic device according to claim 3, wherein if the written data is different from the preset data, it is determined that the write failure has occurred, and the electronic device determines whether the written data is the same as an original address of the address. material. 如請求項4所述的電子裝置,其中若該已寫入資料相同於該原始資料,該位址的N個位元的各者分別地執行一反相程序以產生該另一電子裝置的N個相關位址,其中該相關位址列表基於該N個相關位址而建立,其中N 為正整數。 The electronic device according to claim 4, wherein if the written data is the same as the original data, each of the N bits of the address performs an inversion procedure to generate the N of the other electronic device. Related addresses, where the related address list is established based on the N related addresses, where N Is a positive integer. 如請求項5所述的電子裝置,其中該電子裝置對該N個相關位址進行讀取,以判斷該N個相關位址的一者是否發生一資料異常,其中若該N個相關位址的其中該者發生該資料異常,相應於該其中一者的該已寫入資料被回復,且該電子裝置將該預設資料重新寫入該另一電子裝置的該位址。 The electronic device according to claim 5, wherein the electronic device reads the N related addresses to determine whether a data abnormality occurs in one of the N related addresses, and if the N related addresses The data abnormality occurs in one of the ones, the written data corresponding to the one of them is restored, and the electronic device rewrites the preset data into the address of the other electronic device. 如請求項4所述的電子裝置,其中若該已寫入資料相異於該原始資料,該電子裝置將該預設資料重新寫入該另一電子裝置的該位址。 The electronic device according to claim 4, wherein if the written data is different from the original data, the electronic device rewrites the preset data to the address of the another electronic device. 如請求項1所述的電子裝置,其中該電子裝置透過該通訊介面對該另一電子裝置執行一讀取程序,其中於該讀取程序中,該電子裝置分別於一第一時間點以及一第二時間點讀取該另一電子裝置的一位址的一已寫入資料,且判斷於該第一時間點以及該第二時間點所分別讀取到的兩讀取資料是否相同,以判斷該讀取程序是否成功。 The electronic device according to claim 1, wherein the electronic device executes a reading procedure to the other electronic device through the communication interface, wherein in the reading procedure, the electronic device is at a first time point and a At the second time point, read a written data of one address of the other electronic device, and determine whether the two read data respectively read at the first time point and the second time point are the same, to Determine whether the reading procedure is successful. 如請求項1所述的電子裝置,其中該通訊介面為序列外設介面(Serial Peripheral Interface,SPI)。 The electronic device according to claim 1, wherein the communication interface is a serial peripheral interface (Serial Peripheral Interface, SPI). 一種通訊方法,包含: A communication method including: 藉由一電子裝置透過一通訊介面對一另一電子裝置執行一寫入程序; A writing process is executed by an electronic device to another electronic device through a communication interface; 若一寫入失敗發生,藉由該電子裝置建立相關於該寫入程序的一相關位址列表;以及 If a writing failure occurs, use the electronic device to create a related address list related to the writing process; and 藉由該電子裝置校驗該相關位址列表中的複數相關位址,且重新執行該寫入程序。 The electronic device verifies a plurality of related addresses in the related address list, and re-executes the writing process.
TW109111652A 2020-02-27 2020-04-07 Electrical device and communication method TWI762900B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010122202.9 2020-02-27
CN202010122202.9A CN113312294B (en) 2020-02-27 2020-02-27 Electronic device and communication method

Publications (2)

Publication Number Publication Date
TW202132981A true TW202132981A (en) 2021-09-01
TWI762900B TWI762900B (en) 2022-05-01

Family

ID=77370740

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109111652A TWI762900B (en) 2020-02-27 2020-04-07 Electrical device and communication method

Country Status (2)

Country Link
CN (1) CN113312294B (en)
TW (1) TWI762900B (en)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067271A (en) * 1999-08-25 2001-03-16 Nec Network Sensa Kk Check method of memory circuit
TWI319140B (en) * 2003-06-10 2010-01-01 Mitac Int Corp A fast detection method for the accuracy of the data
TWI263229B (en) * 2005-03-17 2006-10-01 Sunplus Technology Co Ltd Memory device with interface for serial transmission and error correction method for serial transmission interface
US8452929B2 (en) * 2005-04-21 2013-05-28 Violin Memory Inc. Method and system for storage of data in non-volatile media
TWI335529B (en) * 2007-08-15 2011-01-01 Inventec Corp Method for checking read/write function of the storage device
US8756486B2 (en) * 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US9537511B2 (en) * 2013-11-06 2017-01-03 Cypress Semiconductor Corporation Methods, circuits, systems and computer executable instruction sets for providing error correction of stored data and data storage devices utilizing same
KR101558687B1 (en) * 2013-12-10 2015-10-08 현대자동차주식회사 Serial communication test device, system including the same and method thereof
CN104331381B (en) * 2014-11-21 2017-07-28 湖南先步信息股份有限公司 The anti-interference output intent of SPI chips
FR3038752B1 (en) * 2015-07-10 2018-07-27 Stmicroelectronics (Rousset) Sas METHOD AND CIRCUIT FOR PROTECTING AND VERIFYING ADDRESS DATA
CN105260260A (en) * 2015-09-21 2016-01-20 上海斐讯数据通信技术有限公司 SPI data transmission device with data check function and data check method
TWI647566B (en) * 2018-01-19 2019-01-11 慧榮科技股份有限公司 Data storage device and data processing method
TWI658465B (en) * 2018-02-02 2019-05-01 華邦電子股份有限公司 Memory device and program/erase method thereof
CN110442298B (en) * 2018-05-02 2021-01-12 杭州海康威视系统技术有限公司 Storage equipment abnormality detection method and device and distributed storage system
CN110764947B (en) * 2018-07-27 2023-10-20 深圳大心电子科技有限公司 Data writing method and memory controller
CN109597821A (en) * 2018-12-12 2019-04-09 北京谷数科技有限公司 A kind of method of calibration of storing data consistency

Also Published As

Publication number Publication date
CN113312294A (en) 2021-08-27
TWI762900B (en) 2022-05-01
CN113312294B (en) 2024-06-18

Similar Documents

Publication Publication Date Title
EP3822840B1 (en) Method, apparatus, computer storage medium and program for authenticating a chip design
CN101680932B (en) Integrated circuit with self-test feature for validating functionality of external interfaces
US20190272252A1 (en) Method of processing deadlock of i2c bus, electronic device and communication system
US8006165B2 (en) Memory controller and semiconductor memory device
KR101614456B1 (en) Multi-site testing of computer memory devices and serial io ports
US8239708B2 (en) System on chip (SoC) device verification system using memory interface
KR101558687B1 (en) Serial communication test device, system including the same and method thereof
CN107066746B (en) Method for realizing PCA9555 function through CPLD based on I2C interface
KR20110124617A (en) System-on-chip and debugging method thereof
US20140157051A1 (en) Method and device for debugging a mips-structure cpu with southbridge and northbridge chipsets
CN111078614B (en) FPGA-based functional module
US20080288231A1 (en) Apparatus and method for cooperation verification
US20070294436A1 (en) Apparatus and method for scanning slave addresses of smbus slave devices
TWI762900B (en) Electrical device and communication method
CN113434442A (en) Switch and data access method
CN117291145A (en) Verification method and system of system on chip and electronic device
US7363565B2 (en) Method of testing apparatus having master logic unit and slave logic unit
CN116226012A (en) Serial peripheral interface integrated circuit and method of operation thereof
JPH06180657A (en) Method and equipment for testing computer system board
CN115794530A (en) Hardware connection testing method, device, equipment and readable storage medium
CN113886158A (en) Automatic FPGA fault injection test system and method
CN113765827B (en) Switch firmware protection system
US6292908B1 (en) Method and apparatus for monitoring internal bus signals by using a reduced image of the internal bus
EP1080410A1 (en) Vlsi emulator comprising processors and reconfigurable circuits
CN118626118A (en) FPGA firmware upgrading device, method and system