[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2016115154A - Master device and electric apparatus for performing synchronous serial data communication - Google Patents

Master device and electric apparatus for performing synchronous serial data communication Download PDF

Info

Publication number
JP2016115154A
JP2016115154A JP2014253476A JP2014253476A JP2016115154A JP 2016115154 A JP2016115154 A JP 2016115154A JP 2014253476 A JP2014253476 A JP 2014253476A JP 2014253476 A JP2014253476 A JP 2014253476A JP 2016115154 A JP2016115154 A JP 2016115154A
Authority
JP
Japan
Prior art keywords
master device
clock
spi
data
slave device
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2014253476A
Other languages
Japanese (ja)
Inventor
渡辺 英行
Hideyuki Watanabe
英行 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014253476A priority Critical patent/JP2016115154A/en
Publication of JP2016115154A publication Critical patent/JP2016115154A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To allow a master device to avoid an error due to the delay of data transferred from a slave device to the master device if synchronous serial data communication is performed between the master device and the slave device.SOLUTION: A master device 204D for performing synchronous serial data communication with a slave device on the basis of a clock includes: transmission preparation determination means (SPI control unit) 204D(1) for determining whether or not the slave device has prepared a data line (SI) for data transmission corresponding to a command from the master device 204D; and clock stop control means 204D(6) that stops the clock when the transmission preparation determination means 204D(1) has determined that the preparation of the data line (SI) is not completed, and resumes the supply of the clock when it has determined that the preparation of the data line (SI) is completed.SELECTED DRAWING: Figure 11

Description

本発明は、マスタデバイスとスレーブデバイス間でデータ転送を行う同期式シリアルデータ通信で用いるマスタデバイス、及び前記マスタデバイスと前記スレーブデバイスを備えた電気機器に関する。   The present invention relates to a master device used in synchronous serial data communication for transferring data between a master device and a slave device, and an electric apparatus including the master device and the slave device.

情報処理装置等の電気機器には、既に使用されていないプロセス(旧プロセスという)を用いて製造されたカスタム電子部品を実装したものがある。
これらのカスタム電子部品には、10年以上も継続して使用されているものもある。
しかしながら、旧プロセスを用いたカスタム電子部品の製造は採算性が良くないことから、部品メーカーは旧プロセスを用いたカスタム電子部品の製造を中止(ディスコン)する場合がある。
Some electrical devices such as information processing apparatuses are mounted with custom electronic parts manufactured using a process that has not been used (referred to as an old process).
Some of these custom electronic components have been in use for over 10 years.
However, since the manufacture of custom electronic parts using the old process is not profitable, the parts manufacturer may suspend (disconnect) the manufacture of custom electronic parts using the old process.

部品メーカーがカスタム電子部品の製造を中止すると、電気機器のメーカーは、通常、カスタム電子部品の代替となる電子部品を調達することで対応するが、代替となる電子部品を調達できないことも想定される。
その場合、電気機器のメーカーは、マイクロコンピュータ(以下、マイコン)を活用することで対応している。
When a parts manufacturer stops producing custom electronic components, electrical equipment manufacturers usually respond by procuring electronic parts that can replace custom electronic parts. The
In that case, manufacturers of electrical equipment respond by using a microcomputer (hereinafter referred to as a microcomputer).

但し、カスタム電子部品をマイコンに置き換えるだけでは、電気機器の処理にエラーが生じる場合がある。
電気機器におけるスレーブデバイスをマイコンに置き換え、マスタデバイスとスレーブデバイス間の同期式シリアルデータ通信で使用される、例えばSPI(Serial Peripheral Interface)に接続すると、マスタデバイスがスレーブデバイスに対してリード要求する時に、マイコンの処理速度が間に合わない場合がある。
However, simply replacing the custom electronic component with a microcomputer may cause an error in the processing of the electrical device.
When a slave device in an electric device is replaced with a microcomputer and connected to, for example, an SPI (Serial Peripheral Interface) used for synchronous serial data communication between the master device and the slave device, the master device makes a read request to the slave device. The processing speed of the microcomputer may not be in time.

本発明は、前記従来の問題に鑑みてなされたものであって、その目的は、マスタデバイスとスレーブデバイス間で同期式シリアルデータ通信を行う場合において、スレーブデバイスのマスタデバイスに対するデータの転送の遅延に起因するエラーをマスタデバイスにおいて回避することである。   The present invention has been made in view of the above-described conventional problems, and an object of the present invention is to delay data transfer to a master device of a slave device when performing synchronous serial data communication between a master device and a slave device. This is to avoid an error caused by the master device.

本発明は、スレーブデバイスとの間でクロックに基づきシリアルデータ通信を行うマスタデバイスであって、前記スレーブデバイスが前記マスタデバイスからのコマンドに対応したデータ送信のためのデータラインの準備ができているか否か判定する送信準備判定手段と、前記送信準備判定手段が前記データラインの準備が未完了と判定したとき前記クロックを停止し、前記データラインの準備が完了と判定したとき前記クロックの供給を再開するクロック停止制御手段と、を有することを特徴とする同期式シリアルデータ通信を行うマスタデバイスである。   The present invention is a master device that performs serial data communication with a slave device based on a clock, and whether the slave device is ready for a data line for data transmission corresponding to a command from the master device. Transmission preparation determining means for determining whether or not the transmission preparation determining means stops the clock when the data line preparation is determined to be incomplete, and supplies the clock when the data line preparation is determined to be complete. A master device for performing synchronous serial data communication, comprising: a clock stop control means for restarting.

本発明のマスタデバイスによれば、マスタデバイスとスレーブデバイス間で同期式シリアルデータ通信を行う場合において、スレーブデバイスのマスタデバイスに対するデータの転送の遅延に起因するエラーをマスタデバイスにおいて回避することができる。   According to the master device of the present invention, when synchronous serial data communication is performed between a master device and a slave device, errors due to a delay in data transfer to the master device of the slave device can be avoided in the master device. .

SPIに接続する操作部の操作制御部をASICで構成した画像形成装置のブロック図である。2 is a block diagram of an image forming apparatus in which an operation control unit of an operation unit connected to an SPI is configured by an ASIC. FIG. SPIに接続するコントローラの構造を概略的に示すブロック図である。It is a block diagram which shows roughly the structure of the controller connected to SPI. SPIに接続するスレーブデバイスである操作部のブロック図である。It is a block diagram of an operation unit which is a slave device connected to the SPI. SPIマスタデバイスのブロック図である。It is a block diagram of an SPI master device. SPIマスタデバイスにおける、SPIスレーブデバイスへのデータの書き込み時のタイミング図である。FIG. 4 is a timing chart when data is written to an SPI slave device in the SPI master device. SPIマスタデバイスにおける、SPIスレーブデバイスからのデータの読み込み時のタイミング図である。FIG. 4 is a timing chart when reading data from an SPI slave device in an SPI master device. 図3に示す操作部の操作制御部をASICからマイコンに置換した場合の、SPIマスタデバイスにおける、データの読み込み時のタイミング図である。FIG. 4 is a timing chart at the time of reading data in the SPI master device when the operation control unit of the operation unit shown in FIG. 3 is replaced from an ASIC to a microcomputer. 本発明の実施形態に係るSPIマスタデバイスを有する画像形成装置のブロック図である。1 is a block diagram of an image forming apparatus having an SPI master device according to an embodiment of the present invention. 本発明の実施形態に係るSPIマスタデバイスを備えたコントローラのブロック図である。It is a block diagram of a controller provided with an SPI master device according to an embodiment of the present invention. 操作部のブロック図である。It is a block diagram of an operation part. コントローラのSPIマスタデバイスのブロック図である。It is a block diagram of the SPI master device of a controller. SPIマスタデバイスにおける、SPIスレーブデバイスから転送されるリードデータの読み込み時のタイミング図である。FIG. 5 is a timing chart at the time of reading read data transferred from an SPI slave device in an SPI master device. 本発明の別の実施形態に係るSPIマスタデバイスのブロック図である。FIG. 6 is a block diagram of an SPI master device according to another embodiment of the present invention. 本発明の別の実施形態に係るSPIマスタデバイスにおける、データの読み込み時のタイミング図である。FIG. 10 is a timing chart at the time of reading data in an SPI master device according to another embodiment of the present invention. アドレス情報等の付加情報が転送されない場合の、データの読み込み時のタイミング図である。It is a timing diagram at the time of reading data when additional information such as address information is not transferred.

以下、本発明の実施形態について説明するが、ここでは、本発明の前提として、電気機器の制御部をマスタデバイスとしかつ操作部をスレーブデバイスとして、両デバイス間をSPIで接続して同期式シリアルデータ通信を行う場合において、操作部の操作制御部をASICで構成した場合における、データの書き込み、また読み込みに関する処理について図1ないし図6を参照して説明する。続いて、ASICが旧プロセスによる場合に、それをマイコンに代えた場合の問題とその解決策に関する本発明の実施形態のマスタデバイスなどについて、図7以下の図面を参照して説明する。   Hereinafter, an embodiment of the present invention will be described. Here, as a premise of the present invention, a control unit of an electric device is a master device and an operation unit is a slave device, and both devices are connected by SPI to synchronize serial. In the case of performing data communication, processing related to data writing and reading when the operation control unit of the operation unit is configured by an ASIC will be described with reference to FIGS. Subsequently, when the ASIC is based on an old process, a problem when the microcomputer is replaced with a microcomputer and a master device according to an embodiment of the present invention relating to a solution to the problem will be described with reference to FIG. 7 and subsequent drawings.

本発明は、マスタデバイスとスレーブデバイス間のデータ転送に関わるものであるが、同期式シリアル通信を行うマスタデバイスとスレーブデバイスを備えた電気機器は、例えば、情報処理装置、画像形成装置等であり、ここでは画像形成装置を例に採って説明する。
図1は、SPIに接続する操作部の操作制御部をASICで構成した画像形成装置のブロック図である。
画像形成装置100は、図示のようにスイッチ(SW)10、PSU(Power Supply Unit)14、プロッタ部12、スキャナ部16、コントローラ20、操作部30を有する。
The present invention relates to data transfer between a master device and a slave device. An electrical device including a master device and a slave device that performs synchronous serial communication is, for example, an information processing apparatus, an image forming apparatus, or the like. Here, the image forming apparatus will be described as an example.
FIG. 1 is a block diagram of an image forming apparatus in which an operation control unit of an operation unit connected to an SPI is configured by an ASIC.
The image forming apparatus 100 includes a switch (SW) 10, a PSU (Power Supply Unit) 14, a plotter unit 12, a scanner unit 16, a controller 20, and an operation unit 30 as illustrated.

また、ここで、コントローラ20と操作部30はSPIで接続している。
なお、SPIは、後述の図4に示すように、スレーブデバイスを選択するチップセレクト(CS;Chip Select)信号線、クロック(CLK;Clock)信号線、データ出力(SO;Signal Out)信号線、データ入力(SI;Signal Input)信号線の4本の信号線で構成されている。
Here, the controller 20 and the operation unit 30 are connected by an SPI.
As shown in FIG. 4 described later, the SPI includes a chip select (CS) signal line, a clock (CLK) signal line, a data output (SO) signal line, It consists of four signal lines, data input (SI) signal lines.

スイッチ10は電源のスイッチであり、スイッチ10がONになると、電源がPSU14に供給される。
PSU14は画像形成装置100の電源ユニットであり、プロッタ部12、スキャナ部16、コントローラ20、及び操作部30に電源を供給する。
プロッタ部12は、画像形成装置100内部において形成した画像を出力する。
スキャナ部16は、例えば原稿画像をスキャンする。
コントローラ20は、画像形成装置100の制御部であり、操作部30、ネットワーク、USB(Universal Serial Bus)からの命令(操作)を受信し、その命令に応じた制御を実行する。
操作部30は、画像形成装置100に対して各種操作を設定(命令)するための手段である。
The switch 10 is a power switch. When the switch 10 is turned on, power is supplied to the PSU 14.
The PSU 14 is a power supply unit of the image forming apparatus 100 and supplies power to the plotter unit 12, the scanner unit 16, the controller 20, and the operation unit 30.
The plotter unit 12 outputs an image formed inside the image forming apparatus 100.
The scanner unit 16 scans a document image, for example.
The controller 20 is a control unit of the image forming apparatus 100, receives a command (operation) from the operation unit 30, a network, and a USB (Universal Serial Bus), and executes control according to the command.
The operation unit 30 is a unit for setting (commanding) various operations to the image forming apparatus 100.

図2は、SPIに接続するコントローラ20の構造を概略的に示すブロック図である。
コントローラ20は、クロック生成部201、CPU(Central Processing Unit)202、ROM(Read Only Memory)203、ASIC(Application Specific Integrated Circuit)204、DDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)205、PHY206、PHYクロック生成部207を有する。
FIG. 2 is a block diagram schematically showing the structure of the controller 20 connected to the SPI.
The controller 20 includes a clock generation unit 201, a CPU (Central Processing Unit) 202, a ROM (Read Only Memory) 203, an ASIC (Application Specific Integrated Circuit) 204, a DDR SDRAM (Double-Data-Rate Synchronous Dynamic Random Access Memory) 205, A PHY 206 and a PHY clock generation unit 207 are included.

クロック生成部201は、コントローラ20内部で用いるクロック信号を生成し、生成したクロック信号CLKをコントローラ20の各部に供給する。
CPU202は、コントローラ20全体を制御する演算処理装置である。
ROM203は、不揮発性のメモリであり、CPU202により実行されるプログラム及び各種データを格納する。
The clock generation unit 201 generates a clock signal used inside the controller 20 and supplies the generated clock signal CLK to each unit of the controller 20.
The CPU 202 is an arithmetic processing device that controls the entire controller 20.
The ROM 203 is a nonvolatile memory, and stores programs executed by the CPU 202 and various data.

ASIC204は、画像データ処理用の集積回路である。
ASIC204は、図2に示すように、CPU I/F(インタフェース)204a、ROM I/F204b、USB I/F204c、SPIデバイス204d、PCI(Peripheral Component Interconnect) I/F204e、MEM (Memory Module)I/F204f、MAC(Media Access Control)204gを有する。
The ASIC 204 is an integrated circuit for image data processing.
As shown in FIG. 2, the ASIC 204 includes a CPU I / F (interface) 204a, ROM I / F 204b, USB I / F 204c, SPI device 204d, PCI (Peripheral Component Interconnect) I / F 204e, and MEM (Memory Module) I / F. F204f and MAC (Media Access Control) 204g.

CPU I/F204aは、CPU202とのインタフェースである。
ROM I/F204bは、ROM203とのインタフェースである。
USB I/F204cは、PC(Personal Computer)等とデータ通信を実行するためのインタフェースである。
The CPU I / F 204a is an interface with the CPU 202.
The ROM I / F 204b is an interface with the ROM 203.
The USB I / F 204c is an interface for executing data communication with a PC (Personal Computer) or the like.

SPIデバイス204dは、操作部30とのインタフェースであり、マスタデバイスとして機能する。以下、説明の便宜上、SPIデバイスをSPIマスタデバイス204dと呼ぶ。
CPU202は、SPIマスタデバイス204dからスレーブデバイスである操作部30のSPIスレーブデバイス301a(図3)に、操作部30のキー302aをスキャンするコマンドを定期的に転送するように制御する。CPU202は、SPIスレーブデバイス301aから転送されるリードデータを認識して、操作部30において押下されたキー302aの操作内容を判定する。
CPU202は、操作部30において押下されたキー302aの操作内容(操作情報)に基づき、画像形成装置100の制御を実行する。
The SPI device 204d is an interface with the operation unit 30 and functions as a master device. Hereinafter, for convenience of explanation, the SPI device is referred to as an SPI master device 204d.
The CPU 202 controls to regularly transfer a command for scanning the key 302a of the operation unit 30 from the SPI master device 204d to the SPI slave device 301a (FIG. 3) of the operation unit 30 which is a slave device. The CPU 202 recognizes the read data transferred from the SPI slave device 301 a and determines the operation content of the key 302 a pressed on the operation unit 30.
The CPU 202 executes control of the image forming apparatus 100 based on the operation content (operation information) of the key 302 a pressed on the operation unit 30.

例えば、操作部30において「COPY キー」がユーザにより押下された場合、CPU202は、SPIスレーブデバイス301aから転送されたデータより「COPY キー」が押下されたことを認識する。CPU202は、この認識に基づきスキャナ部16において原稿画像をスキャンし、プロッタ部12においてスキャナ部16から転送された画像データに基づき画像を出力するように制御する。   For example, when the “COPY key” is pressed by the user in the operation unit 30, the CPU 202 recognizes that the “COPY key” is pressed from the data transferred from the SPI slave device 301 a. Based on this recognition, the CPU 202 controls the scanner unit 16 to scan a document image and the plotter unit 12 to output an image based on the image data transferred from the scanner unit 16.

PCI I/F204eは、プロッタ部12、スキャナ部16とのインタフェースである。
MEM I/F204fは、DDR SDRAM205とのメモリインタフェースである。
MAC204gは、ネットワークにおけるデータリンク層として機能し、PHY206に接続される。
The PCI I / F 204 e is an interface with the plotter unit 12 and the scanner unit 16.
The MEM I / F 204f is a memory interface with the DDR SDRAM 205.
The MAC 204g functions as a data link layer in the network and is connected to the PHY 206.

DDR SDRAM205は、揮発性メモリであり、各種データを一時的に記憶する。
PHY206は、ネットワークにおける物理層として機能する。
PHYクロック生成部207は、クロック信号を生成し、PHY206にクロック信号を供給する。
The DDR SDRAM 205 is a volatile memory and temporarily stores various data.
The PHY 206 functions as a physical layer in the network.
The PHY clock generation unit 207 generates a clock signal and supplies the clock signal to the PHY 206.

図3は、SPIに接続するスレーブデバイスである操作部30のブロック図である。
操作部30は、操作制御部301、キー302a、キー制御部302、LCD(Liquid Crystal Display)303a、LCDドライバ303b、LCD制御部303、LED(Light Emitting Diode)304a、LED制御部304を有する。
なお、図3では、前述のように、操作部30の操作制御部301をASICで構成している。
FIG. 3 is a block diagram of the operation unit 30 which is a slave device connected to the SPI.
The operation unit 30 includes an operation control unit 301, a key 302a, a key control unit 302, an LCD (Liquid Crystal Display) 303a, an LCD driver 303b, an LCD control unit 303, an LED (Light Emitting Diode) 304a, and an LED control unit 304.
In FIG. 3, as described above, the operation control unit 301 of the operation unit 30 is configured by an ASIC.

操作制御部301は、SPIデバイス301a及びコマンド制御部301bにより構成されている。
SPIデバイス301aは、コントローラ20とのインタフェースであり、スレーブデバイスとして機能する。以下、説明の便宜上、SPIデバイスをSPIスレーブデバイス301aと云う。
コマンド制御部301bは、SPIマスタデバイス204dから転送されたコマンドを認識し、そのコマンドに基づき操作部30における各種制御を実行する。
なお、コマンドには、LED ON/OFFコマンド(ライトコマンド)、LCD制御コマンド(ライトコマンド)、キーセンスコマンド(リードコマンド)等がある。
The operation control unit 301 includes an SPI device 301a and a command control unit 301b.
The SPI device 301a is an interface with the controller 20 and functions as a slave device. Hereinafter, for convenience of explanation, the SPI device is referred to as an SPI slave device 301a.
The command control unit 301b recognizes the command transferred from the SPI master device 204d, and executes various controls in the operation unit 30 based on the command.
The commands include an LED ON / OFF command (write command), an LCD control command (write command), a key sense command (read command), and the like.

キー302aは、操作パネル上のキー入力を受け付けるキー入力受付手段である。
キー制御部302は、キーセンスコマンドを受け取り、キー入力の有無を検知し、キー302aの状態(内容)を操作制御部301に送信する。
LCD303aは、第1の表示手段であり、バックライト等を備えた液晶ディスプレイである。
LCDドライバ303bは、LCD303aに電源を供給し、LCD制御部303により指定されたデータをLCD303aに表示させる。
LCD制御部303は、表示対象として指定されたデータをLCD303aに表示可能なデータに変換し、LCD303aを制御する。LCD制御部303は、例えば、LCD303aのバックライト等を制御する。
LED304aは、第2の表示手段であり、発光ダイオードである。
LED制御部304は、LED304aに関するコマンド(LED ON/OFF)を受け取り、コマンドで指定されたLED304aを点灯又は消灯する。
The key 302a is a key input receiving unit that receives a key input on the operation panel.
The key control unit 302 receives the key sense command, detects the presence or absence of key input, and transmits the state (contents) of the key 302 a to the operation control unit 301.
The LCD 303a is a first display means, and is a liquid crystal display provided with a backlight or the like.
The LCD driver 303b supplies power to the LCD 303a and causes the LCD 303a to display data designated by the LCD control unit 303.
The LCD control unit 303 converts the data designated as a display target into data that can be displayed on the LCD 303a, and controls the LCD 303a. The LCD control unit 303 controls, for example, a backlight of the LCD 303a.
The LED 304a is a second display unit and is a light emitting diode.
The LED control unit 304 receives a command (LED ON / OFF) related to the LED 304a, and turns on or off the LED 304a designated by the command.

図4は、SPIマスタデバイス204dのブロック図である。
SPIマスタデバイス204dは、SPI制御部204d(1)、CS生成部204d(2)、CLK生成部204d(3)、パラレル・シリアル変換部204d(4)、シリアル・パラレル変換部204d(5)を有する。
SPI制御部204d(1)は、SPIマスタデバイス204dを構成する各部(即ち、CS生成部204d(2)、CLK生成部204d(3)、パラレル・シリアル変換部204d(4)、シリアル・パラレル変換部204d(5))を制御する。
FIG. 4 is a block diagram of the SPI master device 204d.
The SPI master device 204d includes an SPI control unit 204d (1), a CS generation unit 204d (2), a CLK generation unit 204d (3), a parallel / serial conversion unit 204d (4), and a serial / parallel conversion unit 204d (5). Have.
The SPI control unit 204d (1) is a component (i.e., CS generation unit 204d (2), CLK generation unit 204d (3), parallel / serial conversion unit 204d (4), serial / parallel conversion) constituting the SPI master device 204d. Part 204d (5)).

CS生成部204d(2)は、チップセレクト(CS)信号を生成し、出力する。
CLK生成部204d(3)は、内部クロック信号iCLKからクロック信号CLKを生成する。なお、内部クロック信号iCLKは、クロック生成部201で生成され、SPIマスタデバイス204dに供給される。
パラレル・シリアル変換部204d(4)は、SPIマスタデバイス204dから転送されるパラレルデータをシリアルデータに変換し、データ出力(SO)信号として出力する。
シリアル・パラレル変換部204d(5)は、SI(データ入力端子)から入力されるシリアルデータをパラレルデータに変換し、PCIバスに転送する。
The CS generation unit 204d (2) generates and outputs a chip select (CS) signal.
The CLK generator 204d (3) generates a clock signal CLK from the internal clock signal iCLK. The internal clock signal iCLK is generated by the clock generation unit 201 and supplied to the SPI master device 204d.
The parallel / serial conversion unit 204d (4) converts the parallel data transferred from the SPI master device 204d into serial data and outputs it as a data output (SO) signal.
The serial / parallel converter 204d (5) converts serial data input from SI (data input terminal) into parallel data, and transfers the parallel data to the PCI bus.

図5は、SPIマスタデバイス204dにおける、SPIスレーブデバイス301aへのデータの書き込み時のタイミング図である。
図5に示すタイミング図では、内部クロック信号iCLK、チップセレクト信号CS、クロック信号CLK、データ出力信号SO、データ入力信号SIを示している。
なお、クロック信号CLKは、SPIマスタデバイス204d及びSPIスレーブデバイス301aの処理において共通の同期信号である。また、後述の図6、図7、図12、図14、図15において、図示の信号も、図5と同様である。
FIG. 5 is a timing chart when the SPI master device 204d writes data to the SPI slave device 301a.
In the timing chart shown in FIG. 5, the internal clock signal iCLK, the chip select signal CS, the clock signal CLK, the data output signal SO, and the data input signal SI are shown.
The clock signal CLK is a common synchronization signal in the processing of the SPI master device 204d and the SPI slave device 301a. In FIG. 6, FIG. 7, FIG. 12, FIG. 14, and FIG. 15, which will be described later, the signals shown in FIG.

コントローラ20(マスタ)から操作部30(スレーブ)にデータを書き込む場合、コントローラ20のCPU202は、SPIマスタデバイス204dのパラレル・シリアル変換部204d(4)にライトコマンド、アドレス、ライトデータを転送する。
パラレル・シリアル変換部204d(4)は、CPU202から転送開始命令を受けると、転送されたライトコマンド、アドレス、ライトデータを、パラレルデータからシリアルデータに変換する。
When data is written from the controller 20 (master) to the operation unit 30 (slave), the CPU 202 of the controller 20 transfers a write command, an address, and write data to the parallel / serial conversion unit 204d (4) of the SPI master device 204d.
Upon receiving a transfer start command from the CPU 202, the parallel / serial conversion unit 204d (4) converts the transferred write command, address, and write data from parallel data to serial data.

SPIマスタデバイス204dのSPI制御部204d(1)は、変換したシリアルデータを出力するために、チップセレクト信号CSをHighレベルからLowレベルに制御し、クロック信号CLKを出力する。
即ち、SPI制御部204d(1)は、クロック信号CLKの立ち下がり(negative edge)に同期させて、ライトコマンド信号(8bit)とアドレス信号(8bit)をデータ出力信号SOとして、操作部30のSPIスレーブデバイス301aに転送する。
The SPI control unit 204d (1) of the SPI master device 204d controls the chip select signal CS from the High level to the Low level and outputs the clock signal CLK in order to output the converted serial data.
In other words, the SPI control unit 204d (1) synchronizes with the falling edge (negative edge) of the clock signal CLK, and uses the write command signal (8 bits) and the address signal (8 bits) as the data output signal SO to generate the SPI of the operation unit 30. Transfer to the slave device 301a.

SPI制御部204d(1)は、さらに、SPIスレーブデバイス301aにデータを書き込む(ライトする)ため、図5に示すように、アドレス信号の転送に続いて15番目のクロックの立ち下がりからSPIスレーブデバイス301aにライトデータを転送する。
SPI制御部204d(1)は、ライトデータを出力するまでクロック信号CLKを出力するようCLK生成部204d(3)を制御し、ライトデータの出力が完了すると(22番目のクロックの立ち下がりのタイミング)、クロック信号CLKをHighレベルに制御(即ち停止)する。
SPI制御部204d(1)は、クロック信号CLKをHighレベルに制御すると同時に、シリアルデータの出力が停止したのでチップセレクト信号CSもHighレベルに制御する。
The SPI control unit 204d (1) further writes (writes) data to the SPI slave device 301a. Therefore, as shown in FIG. 5, the SPI slave device starts from the falling edge of the fifteenth clock following the transfer of the address signal. Write data is transferred to 301a.
The SPI control unit 204d (1) controls the CLK generation unit 204d (3) to output the clock signal CLK until the write data is output, and when the output of the write data is completed (timing of the falling edge of the 22nd clock). ), The clock signal CLK is controlled to high level (that is, stopped).
The SPI control unit 204d (1) controls the clock signal CLK to the high level, and simultaneously controls the chip select signal CS to the high level because the output of the serial data is stopped.

SPIスレーブデバイス301aは、ライトコマンド信号よりコマンドの内容、またアドレス信号よりデータの書き込み指定箇所を認識し、さらにSPIマスタデバイス204dから転送されるライトデータをその指定箇所に書き込む。
また、この場合、SPIマスタデバイス204dに入力されるデータ入力信号SIは、Highの状態で変化しない。
The SPI slave device 301a recognizes the content of the command from the write command signal and the data write designation location from the address signal, and further writes the write data transferred from the SPI master device 204d to the designated location.
In this case, the data input signal SI input to the SPI master device 204d does not change in the High state.

図6は、SPIマスタデバイス204dにおける、SPIスレーブデバイス301aからのデータの読み込み時のタイミング図である。
コントローラ20(マスタ)が操作部30(スレーブ)からデータを読み込む場合、コントローラ20のCPU202は、SPIマスタデバイス204dのパラレル・シリアル変換部204d(4)にリードコマンド、アドレスを転送する。
パラレル・シリアル変換部204d(4)は、CPU202から転送開始命令を受けると、転送されたリードコマンド、アドレスを、パラレルデータからシリアルデータに変換する。
FIG. 6 is a timing chart at the time of reading data from the SPI slave device 301a in the SPI master device 204d.
When the controller 20 (master) reads data from the operation unit 30 (slave), the CPU 202 of the controller 20 transfers a read command and an address to the parallel / serial conversion unit 204d (4) of the SPI master device 204d.
When receiving a transfer start command from the CPU 202, the parallel / serial conversion unit 204d (4) converts the transferred read command and address from parallel data to serial data.

SPI制御部204d(1)は、変換したシリアルデータを出力するために、データの書き込み時と同様に、チップセレクト信号CSをHighレベルからLowレベルに制御し、さらにクロック信号CLKを出力するようにCLK生成部204d(3)を制御する。
SPI制御部204d(1)は、次に、クロック信号の立ち下がりに同期させて、リードコマンド信号(8bit)とアドレス信号(8bit)をデータ出力信号として、SPIスレーブデバイス301aに転送する。
In order to output the converted serial data, the SPI control unit 204d (1) controls the chip select signal CS from the high level to the low level and outputs the clock signal CLK in the same manner as when writing data. The CLK generation unit 204d (3) is controlled.
Next, the SPI control unit 204d (1) transfers the read command signal (8 bits) and the address signal (8 bits) as data output signals to the SPI slave device 301a in synchronization with the falling edge of the clock signal.

この場合、SPIスレーブデバイス301aは、リードコマンド信号よりコマンドの内容、またアドレス信号よりデータの読み込み指定箇所を認識し、その指定箇所からデータを読み込む。
SPIスレーブデバイス301aは、図6におけるクロック信号CLKの15番目のクロックの立ち下がりで、読み込んだデータをSPIマスタデバイス204dに転送する。
In this case, the SPI slave device 301a recognizes the content of the command from the read command signal and the data reading designated location from the address signal, and reads the data from the designated location.
The SPI slave device 301a transfers the read data to the SPI master device 204d at the falling edge of the 15th clock of the clock signal CLK in FIG.

SPI制御部204d(1)は、SPIスレーブデバイス301aから転送され、入力される入力データ信号SI(リードデータ(8bit))を、シリアル・パラレル変換部204d(5)により、クロック信号CLKのクロックの16番目の立ち上がりから23番目の各立ち上がりのタイミングでパラレルデータに変換するように制御する。   The SPI control unit 204d (1) transfers the input data signal SI (read data (8 bits)) transferred from the SPI slave device 301a to the clock signal CLK by the serial / parallel conversion unit 204d (5). Control is performed so that the data is converted into parallel data at the timing of each rising edge from the 16th rising edge.

SPI制御部204d(1)は、シリアル・パラレル変換部204d(5)に8bitのリードデータが入力されると、クロック信号CLKをHighレベル(停止)に制御する。
また、SPI制御部204d(1)は、クロック信号CLKをHighレベルに制御すると同時に、リードデータの入力が完了したのでチップセレクト信号CSもHighレベルに制御する。
The SPI control unit 204d (1) controls the clock signal CLK to a high level (stop) when 8-bit read data is input to the serial / parallel conversion unit 204d (5).
In addition, the SPI control unit 204d (1) controls the clock signal CLK to the high level, and simultaneously controls the chip select signal CS to the high level since the input of the read data is completed.

以上、SPIに接続する操作部30の操作制御部301をASICで構成した場合における、SPIマスタデバイス204dとSPIスレーブデバイス301a間におけるデータ転送について説明した。
次に、以上で説明した操作制御部301のASICが旧プロセスで製造したもので既に製造停止されていると仮定して、そのASICをマイコンに置き換えた場合に、SPIマスタデバイス204dとSPIスレーブデバイス301a間のデータの転送処理において発生するエラーについて説明する。
The data transfer between the SPI master device 204d and the SPI slave device 301a when the operation control unit 301 of the operation unit 30 connected to the SPI is configured with an ASIC has been described above.
Next, assuming that the ASIC of the operation control unit 301 described above is manufactured by an old process and has already been stopped, the SPI master device 204d and the SPI slave device are replaced when the ASIC is replaced with a microcomputer. An error that occurs in the data transfer process between 301a will be described.

ここで、マイコンは、一般に数千以上の命令を組み合わせて構成されるプログラム(即ち、ソフトウェア)で動作するコンピュータである。そのため、通常のマイコンでは、所定の周波数において、1クロック周期期間内に複数の命令の全てを判定することができない場合がある。
例えば、画像形成装置100の処理において、マイコンは、SPIマスタデバイス204dから転送されるLCD303a、LED304a、キー302a関連のコマンドを1クロックで判定することができない場合がある。また、マイコンは、キー302aの状態を検知する場合等、処理の内容によっては、数千ものクロックを必要とする場合もある。
したがって、電気機器、例えば画像形成装置におけるデータ処理部材の一部を、ASICからマイコンに置換しただけでは、マイコンの処理遅延が考慮されていないため、処理にエラーが生じることがある。
Here, the microcomputer is a computer that operates with a program (that is, software) that is generally configured by combining several thousand or more instructions. For this reason, an ordinary microcomputer may not be able to determine all of a plurality of instructions within one clock cycle period at a predetermined frequency.
For example, in the processing of the image forming apparatus 100, the microcomputer may not be able to determine commands related to the LCD 303a, LED 304a, and key 302a transferred from the SPI master device 204d in one clock. Also, the microcomputer may require thousands of clocks depending on the contents of processing, such as when detecting the state of the key 302a.
Therefore, simply replacing a part of the data processing member in an electrical apparatus, for example, an image forming apparatus, from the ASIC to the microcomputer does not take into account the processing delay of the microcomputer, and an error may occur in the processing.

図7は、図3に示す操作部30の操作制御部301をASICからマイコンに置換した場合の、SPIマスタデバイス204dにおける、データの読み込み時のタイミング図である。信号の転送処理、ここではSPIマスタデバイス204dにおける読み込み処理にエラーが生じる場合を示している。
なお、図7は、マイコンがコマンドの内容を解釈する上で、1クロック周期を要する場合を示している。
FIG. 7 is a timing chart at the time of data reading in the SPI master device 204d when the operation control unit 301 of the operation unit 30 shown in FIG. 3 is replaced with an microcomputer from the ASIC. The case where an error occurs in the signal transfer process, here, the read process in the SPI master device 204d is shown.
FIG. 7 shows a case where one clock cycle is required for the microcomputer to interpret the contents of the command.

コントローラ20から操作部30に対してデータの転送指示を行う場合、まず、コントローラ20のSPI制御部204d(1)は、SPIスレーブデバイス301aに対して、パラレル・シリアル変換部204d(4)において変換したシリアルデータを出力する。そのために、SPI制御部204d(1)は、図6で示したと同様に、CS生成部204d(2)で生成したチップセレクト信号CSをHighレベルからLowレベルに制御し、さらにCLK生成部204d(3)でクロック信号CLKを出力するように制御する。
SPI制御部204d(1)は、次に、クロック信号CLKの立ち下がりに同期させて、リードコマンド信号(8bit)とアドレス信号(8bit)をデータ出力信号として、SPIスレーブデバイス301aに転送する。
When the controller 20 instructs the operation unit 30 to transfer data, first, the SPI control unit 204d (1) of the controller 20 converts the SPI slave device 301a in the parallel / serial conversion unit 204d (4). Output the serial data. For this purpose, the SPI control unit 204d (1) controls the chip select signal CS generated by the CS generation unit 204d (2) from the high level to the low level, as shown in FIG. In step 3), control is performed to output the clock signal CLK.
Next, the SPI control unit 204d (1) transfers the read command signal (8 bits) and the address signal (8 bits) to the SPI slave device 301a as data output signals in synchronization with the falling edge of the clock signal CLK.

この場合、SPIスレーブデバイス301aを構成するマイコンは、アドレスデータの最後のビット、即ち、クロック信号CLKの15番目のクロックの立ち上がりの時点で、コマンドの内容に関する解釈を開始する。
マイコンは、コマンドの内容に関する解釈を開始してから1クロック周期期間経過後に、コマンドの内容がデータの読み込みであると解釈する。マイコンは、この解釈に基づきSPIマスタデバイス204dから転送されたアドレス信号よりデータの読み込み指定箇所を認識し、その指定された箇所からデータを読み込む。
マイコンは、データを読み込むと、クロック信号CLKの16番目のクロックの立ち下がりで、読み込んだデータ(リードデータ(8bit))をコントローラ20(SPIマスタデバイス204d)に転送する。
In this case, the microcomputer configuring the SPI slave device 301a starts interpretation on the content of the command at the time of the last bit of the address data, that is, the rising edge of the 15th clock of the clock signal CLK.
The microcomputer interprets that the content of the command is data reading after the lapse of one clock period from the start of the interpretation regarding the content of the command. Based on this interpretation, the microcomputer recognizes the data reading designated portion from the address signal transferred from the SPI master device 204d, and reads the data from the designated portion.
When reading the data, the microcomputer transfers the read data (read data (8 bits)) to the controller 20 (SPI master device 204d) at the falling edge of the 16th clock of the clock signal CLK.

他方、SPI制御部204d(1)は、SPIスレーブデバイス301aから転送され、データ入力端子に入力されるデータ入力信号SI(リードデータ(8bit))を、クロック信号CLKの16番目のクロックの立ち上がりからパラレルデータに変換するようにシリアル・パラレル変換部204d(5)を制御する。
そのため、SPI制御部204d(1)は、リードデータとして1クロックシフト(遅延)したデータを読み込むこととなり、正確なデータを読み込むことができない。即ち、リードデータの読み込み処理において、エラーが生じることとなる。
On the other hand, the SPI control unit 204d (1) transfers the data input signal SI (read data (8 bits)) transferred from the SPI slave device 301a and input to the data input terminal from the rising edge of the 16th clock of the clock signal CLK. The serial / parallel converter 204d (5) is controlled to convert the data into parallel data.
Therefore, the SPI control unit 204d (1) reads data that has been shifted (delayed) by one clock as read data, and cannot read accurate data. That is, an error occurs in the read data reading process.

このように、操作制御部301をマイコンで構成させると処理上の遅延が生じる。
そこで、本発明の実施形態に係るSPIマスタデバイスは、SPIスレーブデバイスをマイコンで構成することに起因して生じる処理上の遅延に応じて、SPIマスタデバイス204dの同期制御に用いるクロック信号CLKを制御することでこの問題を解決する。
以下、本発明の実施形態に係るSPIマスタデバイスを図8ないし図15を参照して説明する。
As described above, when the operation control unit 301 is configured by a microcomputer, a processing delay occurs.
Therefore, the SPI master device according to the embodiment of the present invention controls the clock signal CLK used for synchronization control of the SPI master device 204d according to the processing delay caused by configuring the SPI slave device with a microcomputer. To solve this problem.
Hereinafter, an SPI master device according to an embodiment of the present invention will be described with reference to FIGS.

図8は、本発明の実施形態に係るSPIマスタデバイスを有する画像形成装置のブロック図である。
画像形成装置100は、操作部30の操作制御部301(図3)をマイコンで構成したこと以外は、図1に示したものと同様である。
即ち、画像形成装置100は、スイッチ10、PSU14、プロッタ部12、スキャナ部16、コントローラ20、操作部30を有する。
また、コントローラ20と操作部30がSPIで接続され、さらにSPIを構成する信号線が4本の信号線(チップセレクト信号CS、クロック信号CLK、データ出力信号SO、データ入力信号SIの各信号線)で構成されている。
FIG. 8 is a block diagram of an image forming apparatus having an SPI master device according to an embodiment of the present invention.
The image forming apparatus 100 is the same as that illustrated in FIG. 1 except that the operation control unit 301 (FIG. 3) of the operation unit 30 is configured by a microcomputer.
That is, the image forming apparatus 100 includes a switch 10, a PSU 14, a plotter unit 12, a scanner unit 16, a controller 20, and an operation unit 30.
In addition, the controller 20 and the operation unit 30 are connected by SPI, and the signal lines constituting the SPI are four signal lines (the signal lines of the chip select signal CS, the clock signal CLK, the data output signal SO, and the data input signal SI). ).

図9は、本発明の実施形態に係るSPIマスタデバイスを備えたコントローラ20のブロック図である。
コントローラ20は、図2に示したものと同様に、クロック生成部201、CPU202、ROM203、ASIC204、DDR SDRAM205、PHY206、PHYクロック生成部207を有する。
コントローラ20を構成する各部に関して、ASIC204のSPIマスタデバイス204D以外は、図2に示したものと同様の機能となる。
なお、ここでもSPIデバイスをSPIマスタデバイス204Dとして説明する。また、SPIマスタデバイス204Dについては、図11、図13を参照して後述する。
FIG. 9 is a block diagram of the controller 20 including the SPI master device according to the embodiment of the present invention.
The controller 20 includes a clock generation unit 201, a CPU 202, a ROM 203, an ASIC 204, a DDR SDRAM 205, a PHY 206, and a PHY clock generation unit 207, as shown in FIG.
With respect to each part constituting the controller 20, functions other than the SPI master device 204D of the ASIC 204 have the same functions as those shown in FIG.
Here, the SPI device is described as the SPI master device 204D. The SPI master device 204D will be described later with reference to FIGS.

図10は、操作部30Aのブロック図である。
操作部30Aは、図10に示すように、操作制御部301A、キー302a、LCDドライバ303b、LCD303a、LED304aを有する。
ここで、操作制御部301Aは、前述のようにマイコンで構成している。
なお、SPIデバイス301A(1)、コマンド制御部301A(2)だけではなく、キー制御部301A(3)、LCD制御部301A(4)、LED制御部301A(5)もマイコンで構成する。
また、ここでも図3に示したものと同様に、SPIデバイスをSPIスレーブデバイス301A(1)として説明する。
FIG. 10 is a block diagram of the operation unit 30A.
As illustrated in FIG. 10, the operation unit 30A includes an operation control unit 301A, a key 302a, an LCD driver 303b, an LCD 303a, and an LED 304a.
Here, the operation control unit 301A is configured by a microcomputer as described above.
Not only the SPI device 301A (1) and the command control unit 301A (2) but also the key control unit 301A (3), the LCD control unit 301A (4), and the LED control unit 301A (5) are configured by a microcomputer.
Also here, as in the case shown in FIG. 3, the SPI device will be described as SPI slave device 301A (1).

図11は、コントローラ20のSPIマスタデバイス204Dのブロック図である。
SPIマスタデバイス204Dは、SPI制御部204D(1)、CS生成部204D(2)、CLK生成部204D(3)、パラレル・シリアル変換部204D(4)、シリアル・パラレル変換部204D(5)、CLK停止制御部204D(6)を有する。
なお、CLK停止制御部204D(6)以外のSPIマスタデバイス204Dを構成する各ブロックは、図4に示したものと同様の機能となる。
FIG. 11 is a block diagram of the SPI master device 204D of the controller 20.
The SPI master device 204D includes an SPI control unit 204D (1), a CS generation unit 204D (2), a CLK generation unit 204D (3), a parallel / serial conversion unit 204D (4), a serial / parallel conversion unit 204D (5), It has a CLK stop control unit 204D (6).
Each block constituting the SPI master device 204D other than the CLK stop control unit 204D (6) has the same function as that shown in FIG.

CLK停止制御部204D(6)は、マイコンにおける処理の遅延量を記憶(設定)する遅延レジスタを有する。
CLK停止制御部204D(6)は、データの読み込み動作における所定のタイミングで、遅延レジスタに記憶した遅延量(本発明における予め設定された期間に対応する)に従って、クロックCLKを停止(無効)するように制御する。
The CLK stop control unit 204D (6) has a delay register that stores (sets) a delay amount of processing in the microcomputer.
The CLK stop control unit 204D (6) stops (invalidates) the clock CLK at a predetermined timing in the data reading operation according to the delay amount stored in the delay register (corresponding to a preset period in the present invention). To control.

図12は、SPIマスタデバイス204Dにおける、SPIスレーブデバイス301aから転送されるリードデータの読み込み時のタイミング図である。
なお、図12では、SPIスレーブデバイス204Dからのリードデータの転送が、操作制御部301AをASIC204で構成した場合に比して、2クロック周期期間分の遅延が生じる場合を示している。
即ち、図12は、SPIスレーブデバイス301aからのデータ転送に関する遅延量が既知の場合を示している。
FIG. 12 is a timing chart at the time of reading the read data transferred from the SPI slave device 301a in the SPI master device 204D.
FIG. 12 shows a case where the transfer of the read data from the SPI slave device 204D is delayed by two clock periods as compared with the case where the operation control unit 301A is configured by the ASIC 204.
That is, FIG. 12 shows a case where the delay amount related to data transfer from the SPI slave device 301a is known.

SPIスレーブデバイス301aとの交信を開始するに当たり、まず、SPIマスタデバイス204DのSPI制御部204D(1)は、チップセレクト信号CSをHighレベルからLowレベルに制御し、次に、CLK生成部204D(3)がクロック信号CLKを出力するよう制御する。
SPI制御部204D(1)は、クロック信号の立ち下がりに同期させて、リードコマンド信号(8bit)とアドレス信号(8bit)をデータ出力信号SOとして、SPIスレーブデバイス301aに転送する。
In starting communication with the SPI slave device 301a, first, the SPI control unit 204D (1) of the SPI master device 204D controls the chip select signal CS from the High level to the Low level, and then the CLK generation unit 204D ( 3) controls to output the clock signal CLK.
The SPI control unit 204D (1) transfers the read command signal (8 bits) and the address signal (8 bits) to the SPI slave device 301a as the data output signal SO in synchronization with the falling edge of the clock signal.

SPI制御部204D(1)は、CPU202から送信されたコマンドがリードコマンドと解釈すると、予め設定された期間つまり遅延量(2クロック周期期間分の遅延量)を、7番目のクロックの立ち下がりのタイミングでCLK停止制御部204D(6)の遅延レジスタに設定する。
SPI制御部204D(1)は、データ出力信号SOとしてアドレス信号の出力を完了すると、この場合は、本発明の送信準備判定手段に対応するCLK停止制御部204D(6)は、遅延レジスタに遅延量が設定されていることから、SPIスレーブデバイス301A(1)からシリアル・パラレル変換部204D(5)に接続されたデータライン(SI信号転送用ライン)の準備が完了しないと判定する。CLK停止制御部204D(6)がデータラインの準備が完了していない、つまり未完了と判定すると、図12のAの時点よりクロック信号を停止(Highに固定)するように制御する。また、その時点(図12のA)より、CLK停止制御部204D(6)の遅延レジスタの遅延量(2クロック周期期間分)のカウントダウンを開始させる。
When the command transmitted from the CPU 202 is interpreted as a read command, the SPI control unit 204D (1) uses a preset period, that is, a delay amount (a delay amount corresponding to a period of two clock cycles) as the falling edge of the seventh clock. At the timing, it is set in the delay register of the CLK stop control unit 204D (6).
When the SPI control unit 204D (1) completes the output of the address signal as the data output signal SO, in this case, the CLK stop control unit 204D (6) corresponding to the transmission preparation determination unit of the present invention delays the delay register. Since the amount is set, it is determined that the preparation of the data line (SI signal transfer line) connected from the SPI slave device 301A (1) to the serial / parallel converter 204D (5) is not completed. When the CLK stop control unit 204D (6) determines that the preparation of the data line is not completed, that is, it is not completed, the control is performed so that the clock signal is stopped (fixed to High) from the point A in FIG. At that time (A in FIG. 12), the countdown of the delay amount (for two clock periods) of the delay register of the CLK stop control unit 204D (6) is started.

遅延レジスタのカウントダウンが終了した時点、即ち、2クロックが経過した時点(図12のB)で、CLK停止制御部204D(6)はデータラインの準備が完了したと判定して、クロック信号CLKの停止を解除する。
クロック信号CLKの停止を解除すると、クロック信号CLKは図12に示すようにHighからLowに遷移し、SPIスレーブデバイス301A(1)はSPIマスタデバイス204Dにリードデータを転送する。
When the delay register countdown ends, that is, when two clocks have elapsed (B in FIG. 12), the CLK stop control unit 204D (6) determines that the preparation of the data line is completed, and the clock signal CLK Release the stop.
When the stop of the clock signal CLK is released, the clock signal CLK changes from High to Low as shown in FIG. 12, and the SPI slave device 301A (1) transfers the read data to the SPI master device 204D.

SPI制御部204D(1)は、クロック信号CLKの停止解除に伴いクロック生成部201よりクロック信号CLKが供給されると、シリアル・パラレル変換部204D(5)を制御してクロック信号CLKの16番目のクロックの立ち上がりからシリアルデータをパラレルデータに変換する。
SPI制御部204D(1)は、クロック信号CLKの23番目のクロックの立ち上がりで最後のデータを認識すると、パラレルデータに変換したリードデータを、SPIバスを経由させて、CPU202に転送する。
When the clock signal CLK is supplied from the clock generation unit 201 along with the cancellation of the stop of the clock signal CLK, the SPI control unit 204D (1) controls the serial / parallel conversion unit 204D (5) to set the 16th clock signal CLK. Serial data is converted into parallel data from the rising edge of the clock.
When the SPI control unit 204D (1) recognizes the last data at the rising edge of the 23rd clock of the clock signal CLK, it transfers the read data converted into parallel data to the CPU 202 via the SPI bus.

SPI制御部204D(1)は、図12に示すように、クロック信号CLKの23番目のクロックの立ち上がり後において、クロック信号CLKをHighレベルに制御する。
また、SPI制御部204D(1)は、クロック信号をHighレベルに制御すると、チップセレクト信号CSもHighレベルに制御する。
As shown in FIG. 12, the SPI control unit 204D (1) controls the clock signal CLK to High level after the 23rd clock rise of the clock signal CLK.
Further, when the SPI control unit 204D (1) controls the clock signal to the high level, the chip select signal CS is also controlled to the high level.

以上説明したように、マイコンにおける処理の遅延量が既知である場合は、その遅延量をレジスタに設定し、その遅延量に応じてクロック信号CLKを停止制御することで、SPIマスタデバイス204Dでのデータの読み込み時のエラーを回避することができる。
このように、遅延量をクロックの周期に換算してSPIマスタデバイス204Dの遅延レジスタに設定しておけば、SPIマスタデバイス204Dでのデータの読み込み時のエラーを回避することができる。
また、図12では、データの読み込みに関する処理を説明したが、データの書き込みに関する処理は図5に示したものと同様であり、データの書き込み時には、CLK停止制御部204D(6)はクロック動作の停止制御を実行しない。
As described above, when the processing delay amount in the microcomputer is known, the delay amount is set in the register, and the clock signal CLK is controlled to stop according to the delay amount, so that the SPI master device 204D It is possible to avoid errors when reading data.
As described above, if the delay amount is converted into the clock cycle and set in the delay register of the SPI master device 204D, an error at the time of reading data in the SPI master device 204D can be avoided.
In FIG. 12, the processing related to data reading has been described. However, the processing related to data writing is the same as that shown in FIG. 5. At the time of data writing, the CLK stop control unit 204D (6) performs clock operation. Stop control is not executed.

次に、図13及び図14を参照して、マイコンにおける処理の遅延量が既知でない場合(不明の場合、また変動する場合)のエラー回避のためのクロックの制御について説明する。
図13は、本発明の別の実施形態に係るSPIマスタデバイス204Dのブロック図である。
SPIマスタデバイス204Dは、SPI制御部204D(1)、CS生成部204D(2)、CLK生成部204D(3)、パラレル・シリアル変換部204D(4)、シリアル・パラレル変換部204D(5)、CLK停止制御部204D(6a)を有する。
なお、CLK停止制御部204D(6a)以外のSPIマスタデバイス204Dを構成する各ブロックは、図4に示したものと同様の機能となる。
Next, with reference to FIG. 13 and FIG. 14, a description will be given of clock control for error avoidance when the processing delay amount in the microcomputer is not known (when it is unknown or when it fluctuates).
FIG. 13 is a block diagram of an SPI master device 204D according to another embodiment of the present invention.
The SPI master device 204D includes an SPI control unit 204D (1), a CS generation unit 204D (2), a CLK generation unit 204D (3), a parallel / serial conversion unit 204D (4), a serial / parallel conversion unit 204D (5), A CLK stop control unit 204D (6a) is included.
Each block constituting the SPI master device 204D other than the CLK stop control unit 204D (6a) has the same function as that shown in FIG.

また、データ入力信号SIは、図13に示すように、シリアル・パラレル変換部204D(5)だけではなく、CLK停止制御部204D(6a)にも入力される。
即ち、CLK停止制御部204D(6a)は、データ入力信号SIを、SPIスレーブデバイス301A(1)の転送準備が完了したか否かを判定するレディ信号として利用し、レディ信号のレベル(High又はLow)に応じて、CLKを制御する。
以下、CLK停止制御部204D(6a)における制御に関して、図14のタイミング図を参照して説明する。
Further, as shown in FIG. 13, the data input signal SI is input not only to the serial / parallel converter 204D (5) but also to the CLK stop controller 204D (6a).
That is, the CLK stop control unit 204D (6a) uses the data input signal SI as a ready signal for determining whether the transfer preparation of the SPI slave device 301A (1) is completed, and the ready signal level (High or CLK is controlled according to (Low).
Hereinafter, the control in the CLK stop control unit 204D (6a) will be described with reference to the timing chart of FIG.

図14は、本発明の別の実施形態に係るSPIマスタデバイス204Dにおける、データの読み込み時のタイミング図である。
SPI制御部204D(1)は、図6に示したものと同様に、SPIスレーブデバイス301A(1)へリードコマンドデータ等を転送するため、チップセレクト信号CSをHighレベルからLowレベルに制御し、さらにクロック信号CLKを出力する。
SPI制御部204D(1)は、次に、クロック信号CLKの立ち下がりに同期させて、リードコマンド信号(8bit)をデータ出力信号SOとして、SPIスレーブデバイス301A(1)に転送する。
SPIスレーブデバイス301A(1)は、リードコマンド信号を受信した時点で(即ち、図14におけるクロック信号CLKの7番目のクロックの立ち上がりで)、リードデータを転送することができないと認識し、7番目のクロックの立ち下がりでSPIマスタデバイス204Dに転送するデータ入力信号SIをLowからHighに制御する。
FIG. 14 is a timing chart at the time of reading data in the SPI master device 204D according to another embodiment of the present invention.
The SPI control unit 204D (1) controls the chip select signal CS from the high level to the low level in order to transfer read command data and the like to the SPI slave device 301A (1), similar to that shown in FIG. Further, a clock signal CLK is output.
Next, the SPI control unit 204D (1) transfers the read command signal (8 bits) as the data output signal SO to the SPI slave device 301A (1) in synchronization with the falling edge of the clock signal CLK.
When the SPI slave device 301A (1) receives the read command signal (that is, at the rising edge of the seventh clock of the clock signal CLK in FIG. 14), the SPI slave device 301A (1) recognizes that the read data cannot be transferred. The data input signal SI transferred to the SPI master device 204D is controlled from Low to High at the falling edge of the clock.

SPI制御部204D(1)は、リードコマンド信号(8bit)に続けて、アドレス信号(8bit)をデータ出力信号として、SPIスレーブデバイス301A(1)に転送する。
CLK停止制御部204D(6a)は、データ入力信号SIのレベルを監視し、15番目のクロックの立ち上がりでデータ入力信号SIのレベルがHighであることを確認すると、クロック信号CLKをHighレベルにして停止制御する。
CLK停止制御部204D(6a)は、クロック信号をHighに停止制御した後においても、内部クロック信号iCLKでデータ入力信号SIを監視する。
The SPI control unit 204D (1) transfers the address signal (8 bits) as a data output signal to the SPI slave device 301A (1) following the read command signal (8 bits).
The CLK stop control unit 204D (6a) monitors the level of the data input signal SI, and confirms that the level of the data input signal SI is High at the rising edge of the 15th clock, and sets the clock signal CLK to High level. Stop control.
The CLK stop control unit 204D (6a) monitors the data input signal SI using the internal clock signal iCLK even after the stop control of the clock signal to High.

そして、SPIスレーブデバイス301A(1)は、リードデータの転送準備が完了すると、SPIマスタデバイス204Dに入力されるデータ入力信号SIをHighからLowに制御する。
CLK停止制御部204D(6a)は、データ入力信号がHighからLowに遷移したことを確認すると、クロック信号CLKの停止制御を解除する(即ち、クロックを有効にする)。
SPIスレーブデバイス301A(1)は、15番目のクロックの立ち下がりと同時に、リードデータをSPIマスタデバイス204Dに転送する。
Then, the SPI slave device 301A (1) controls the data input signal SI input to the SPI master device 204D from High to Low when read data transfer preparation is completed.
When the CLK stop control unit 204D (6a) confirms that the data input signal has transitioned from High to Low, the CLK stop control unit 204D (6a) cancels the stop control of the clock signal CLK (ie, enables the clock).
The SPI slave device 301A (1) transfers the read data to the SPI master device 204D simultaneously with the fall of the 15th clock.

SPI制御部204D(1)は、16番目のクロックの立ち上がりから、SPIスレーブデバイス301A(1)より転送されるリードデータを読み込む。
なお、16番目のクロック以後の処理は、図6に示したものと同様の処理となる。
The SPI control unit 204D (1) reads the read data transferred from the SPI slave device 301A (1) from the rising edge of the 16th clock.
The processing after the 16th clock is the same as that shown in FIG.

以上説明したように、本実施形態によれば、SPI制御部204D(1)は、SPIスレーブデバイス301A(1)において転送準備が完了するまで、CLK停止制御部204D(6a)はクロック動作を停止するように制御する。そのため、SPIスレーブデバイス301A(1)からのデータ転送に関する遅延量が不明の場合、また変動する場合であっても、SPIマスタデバイス204Dにおけるデータの読み込み時のエラーを回避することができる。   As described above, according to the present embodiment, the SPI control unit 204D (1) stops the clock operation until the CLK slave control unit 204D (6a) completes the transfer preparation in the SPI slave device 301A (1). Control to do. Therefore, even when the delay amount related to the data transfer from the SPI slave device 301A (1) is unknown or fluctuates, an error at the time of reading data in the SPI master device 204D can be avoided.

次に、データの読み込み処理時に、アドレス情報等の付加情報の転送準備ができず、SPIマスタデバイス204DからSPIスレーブデバイス301A(1)にデータが転送されない場合について、図15を参照して説明する。
この場合、SPI制御部204D(1)は、リードコマンド信号の最後のビットの転送時に(即ち、クロック信号CLKの7番目のクロックの立ち上がりで)、CLK停止制御部204D(6a)によりデータ入力信号SIを監視し、SPIスレーブデバイス301A(1)において転送準備が完了したか否かを確認する(即ち、データ入力信号SIがLowであるか否かを確認する)。
Next, a case in which additional information such as address information is not ready to be transferred during data reading processing, and data is not transferred from the SPI master device 204D to the SPI slave device 301A (1) will be described with reference to FIG. .
In this case, the SPI control unit 204D (1) transfers the data input signal by the CLK stop control unit 204D (6a) when transferring the last bit of the read command signal (that is, at the rising edge of the seventh clock of the clock signal CLK). SI is monitored and it is confirmed whether transfer preparation is completed in the SPI slave device 301A (1) (that is, whether or not the data input signal SI is Low).

図15に示す例では、7番目のクロックの立ち上がり以後もアドレス情報等の付加情報の転送準備ができないため、データ入力信号SIがHighである。したがって、CLK停止制御部204D(6a)は、クロック信号CLKをHighに停止制御する。
CLK停止制御部204D(6a)は、その後において、内部クロック信号iCLKにより、データの転送準備ができてデータ入力信号SIがHighからLowに遷移したことを確認すると、クロック信号CLKの停止制御を解除する。
SPI制御部204D(1)は、8番目のクロックの立ち上がりよりリードデータを読み込む。
In the example shown in FIG. 15, the additional data such as address information is not ready for transfer even after the rising edge of the seventh clock, so the data input signal SI is High. Therefore, the CLK stop control unit 204D (6a) controls to stop the clock signal CLK to High.
After that, the CLK stop control unit 204D (6a) cancels the stop control of the clock signal CLK when it is confirmed by the internal clock signal iCLK that data transfer is ready and the data input signal SI has transitioned from High to Low. To do.
The SPI control unit 204D (1) reads the read data from the rising edge of the eighth clock.

なお、図5、図6、図7、図12、図14、図15では、データ出力信号として転送する、コマンド信号、アドレス信号、データ信号(即ち、ライトデータ、リードデータ)をいずれも8ビット長で構成させているが、8ビット長以外の長さでも、同様に対応(処理)することができる。   5, 6, 7, 12, 14, and 15, the command signal, the address signal, and the data signal (that is, write data and read data) to be transferred as data output signals are all 8 bits. Although it is configured with a length, a length other than the 8-bit length can be similarly handled (processed).

以上、説明したように、本発明の実施形態に係るSPIマスタデバイスとSPIスレーブデバイス間においてデータ転送を行うSPI通信システムでは、SPIスレーブデバイスからのデータの転送が遅延する場合に、SPIマスタデバイス側で、SPIスレーブデバイスからのデータ転送準備完了を示す入力データを監視する簡易な構成により、データの転送が遅延することによる信号読み取りエラーを未然に防止することができる。
そのため、例えば、SPIスレーブデバイスが旧プロセスで製造されたASICで構成されている場合に、それをマイコンで代替した場合に予想されるSPIスレーブデバイスからSPIマスタデバイスへのデータ転送時おける遅延の問題を解消することができる。
As described above, in the SPI communication system that performs data transfer between the SPI master device and the SPI slave device according to the embodiment of the present invention, when the data transfer from the SPI slave device is delayed, the SPI master device side Thus, with a simple configuration for monitoring input data indicating completion of data transfer preparation from the SPI slave device, it is possible to prevent a signal reading error due to a delay in data transfer.
Therefore, for example, when the SPI slave device is composed of an ASIC manufactured by an old process, there is a problem of delay in data transfer from the SPI slave device to the SPI master device, which is expected when the SPI slave device is replaced with a microcomputer. Can be eliminated.

204D…SPIマスタデバイス、204D(1)…SPI制御部、204D(2)…CS生成部、204D(3)…CLK生成部、204D(4)…パラレル・シリアル変換部、204D(5)…シリアル・パラレル変換部、204D(6)…CLK停止制御部。   204D ... SPI master device, 204D (1) ... SPI control unit, 204D (2) ... CS generation unit, 204D (3) ... CLK generation unit, 204D (4) ... parallel / serial conversion unit, 204D (5) ... serial Parallel conversion unit, 204D (6)... CLK stop control unit.

Claims (8)

スレーブデバイスとの間でクロックに基づきシリアルデータ通信を行うマスタデバイスであって、
前記スレーブデバイスが前記マスタデバイスからのコマンドに対応したデータ送信のためのデータラインの準備ができているか否か判定する送信準備判定手段と、
前記送信準備判定手段が前記データラインの準備が未完了と判定したとき前記クロックを停止し、前記データラインの準備が完了と判定したとき前記クロックの供給を再開するクロック停止制御手段と、
を有することを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
A master device that performs serial data communication with a slave device based on a clock,
Transmission preparation determination means for determining whether the slave device is ready for a data line for data transmission corresponding to a command from the master device;
A clock stop control means for stopping the clock when the transmission preparation determination means determines that the preparation of the data line is incomplete, and restarting the supply of the clock when it is determined that the preparation of the data line is complete;
A master device for performing synchronous serial data communication.
請求項1に記載されたマスタデバイスにおいて、
前記送信準備判定手段は、前記クロックの停止後、予め設定された期間が経過したか判定し、
前記クロック停止制御手段は、前記送信準備判定手段が前記設定された期間が経過したと判定したとき、前記クロックの供給を再開することを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
The master device according to claim 1,
The transmission preparation determination means determines whether a preset period has elapsed after the clock is stopped,
The master device for performing synchronous serial data communication, wherein the clock stop control means restarts the supply of the clock when the transmission preparation determination means determines that the set period has elapsed.
請求項1に記載されたマスタデバイスにおいて、
前記クロック停止制御手段は、マスタデバイスからスレーブデバイスへの前記コマンドを含むデータの転送が完了しかつ前記送信準備判定手段が前記スレーブデバイスのデータラインの準備が未完了と判定したことを条件に、クロック信号を停止し、前記スレーブデバイスのデータラインの準備が完了と判断したことを条件に、前記クロック停止を解除してクロック供給を再開することを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
The master device according to claim 1,
The clock stop control means, on condition that the transfer of the data including the command from the master device to the slave device is completed and the transmission preparation determination means determines that the data line preparation of the slave device is incomplete. A master device for performing synchronous serial data communication, wherein the clock signal is stopped and the clock line is released and the clock supply is resumed on the condition that it is determined that the preparation of the data line of the slave device is completed .
請求項3に記載されたマスタデバイスにおいて、
前記送信準備判定手段は、前記データラインの準備の完了又は未完了を、前記スレーブデバイスから転送される前記データラインの準備の完了又は未完了を表す信号に基づき判定することを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
The master device according to claim 3,
The transmission preparation determining means determines whether the preparation of the data line is completed or not based on a signal indicating completion or uncompleted preparation of the data line transferred from the slave device. Master device for serial data communication.
請求項4に記載されたマスタデバイスにおいて、
前記データラインの準備の完了又は未完了を表す信号は、前記データラインで転送される前記マスタデバイスのデータ入力信号であることを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
The master device according to claim 4, wherein
A master device for performing synchronous serial data communication, wherein a signal indicating completion or incomplete of preparation of the data line is a data input signal of the master device transferred on the data line.
請求項3ないし5のいずれかに記載されたマスタデバイスにおいて、
前記送信準備判定手段は、前記マスタデバイスから前記スレーブデバイスへの複数ビットで構成される前記データ転送要求の最終ビットの転送タイミングで、前記スレーブデバイスからの前記データラインの準備の完了又は未完了を判定することを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
The master device according to any one of claims 3 to 5,
The transmission preparation determination means determines whether the preparation of the data line from the slave device is complete or incomplete at the transfer timing of the last bit of the data transfer request composed of a plurality of bits from the master device to the slave device. A master device for performing synchronous serial data communication characterized by determining.
請求項1ないし6のいずれかに記載されたマスタデバイスにおいて、
クロック同期式シリアルデータ通信のコマンドは、スレーブデバイスからのデータをマスタデバイスが読み取るコマンドであることを特徴とする同期式シリアルデータ通信を行うマスタデバイス。
The master device according to any one of claims 1 to 6,
A master device for performing synchronous serial data communication, wherein the command for clock synchronous serial data communication is a command for the master device to read data from a slave device.
請求項1ないし7のいずれかに記載された同期式シリアルデータ通信を行う前記マスタデバイスと前記スレーブデバイスとを備えた電気機器。   An electric apparatus comprising the master device and the slave device that perform synchronous serial data communication according to any one of claims 1 to 7.
JP2014253476A 2014-12-15 2014-12-15 Master device and electric apparatus for performing synchronous serial data communication Pending JP2016115154A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014253476A JP2016115154A (en) 2014-12-15 2014-12-15 Master device and electric apparatus for performing synchronous serial data communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014253476A JP2016115154A (en) 2014-12-15 2014-12-15 Master device and electric apparatus for performing synchronous serial data communication

Publications (1)

Publication Number Publication Date
JP2016115154A true JP2016115154A (en) 2016-06-23

Family

ID=56140057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014253476A Pending JP2016115154A (en) 2014-12-15 2014-12-15 Master device and electric apparatus for performing synchronous serial data communication

Country Status (1)

Country Link
JP (1) JP2016115154A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017063360A (en) * 2015-09-25 2017-03-30 Necプラットフォームズ株式会社 Information processing system, device and interface control method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017063360A (en) * 2015-09-25 2017-03-30 Necプラットフォームズ株式会社 Information processing system, device and interface control method

Similar Documents

Publication Publication Date Title
TWI733752B (en) System and method for side band communication, and tangible, non-transitory, computer-readable medium
US20100095138A1 (en) Computer start-up timing control device and method thereof
US8972754B2 (en) Computer device and frequency adjusting method for central processing unit
US8018784B2 (en) Semiconductor device and data processor
TW202004510A (en) Bus system
CN109062618B (en) Development method, system and medium for server single-node power consumption capping firmware
US8745428B2 (en) Method for clock gating a DSP when not in use
JP2016115154A (en) Master device and electric apparatus for performing synchronous serial data communication
JP6816765B2 (en) Vehicle display device
TW201541239A (en) Communication device
EA201100722A1 (en) METHOD FOR SETTING THE TIME OF DELAYING THE INITIATING DEVICE AND METHOD OF MANAGING THE ELECTRON DETONATOR IN THE SYSTEM OF INITIALIZATION OF THE ELECTRON DETONATOR
JP6049781B2 (en) Image forming apparatus, control method, and program
US10460772B2 (en) Semiconductor device
US10146367B2 (en) Synchronization method and touch signal processing system using the same
KR100734521B1 (en) Intellectual Property Module for System on Chip
CN116126774B (en) Device and method for multiplexing pins of clock and communication interface
JP2010166309A (en) Optical data link
KR20130138472A (en) Apparatus of universal inter-integrated circuit interface for controlling devices using fpga and communication method for using the same
CN110960259B (en) Front-end hardware control method and system of ultrasonic equipment and ultrasonic equipment
TWI432967B (en) Computer device and detecting method for external sub-board
KR20110083409A (en) Timing controller, apparatus for controlling synchronization using timing controller
JP2011124876A (en) Image processor and method of controlling the same
CN118885343A (en) Bus verification method and device, electronic equipment and storage medium
JP2014022939A (en) Electronic controller
CN118939138A (en) Display device, control method thereof, electronic apparatus, storage medium, and program product