Hardware Implementation of A Low Power SD Card Controller: Pan Zhou, Teng Wang, Xin'an Wang, Yinhui Wang
Hardware Implementation of A Low Power SD Card Controller: Pan Zhou, Teng Wang, Xin'an Wang, Yinhui Wang
SD Card Controller
Pan Zhou1, Teng Wang1, Xin’an Wang1*,Yinhui Wang1
1 Key Lab of Integrated Microsystems
School of Electronic and Computer Engineering, Peking University Shenzhen Graduate School
Shenzhen, China
anxinwang@pku.edu.cn
Abstract—Technical innovation drives the low second application category, which has experienced a
power consumption requirements in ASIC design. This dramatic increase of heat dissipation that is now
paper presents a SD card controller, in which two reaching a fundamental limit [2].
asynchronous units (BIU and CIU) are included for Excessive power dissipation causes overheating,
lower power structure. Adding low power mode to finite
state machine makes this controller to shut down if no
which can lead to soft errors or permanent damage. It
data or command is transferring for a long time. Only also limits battery life in portable equipment. From
one FIFO is used to store temporary data in order to technical point of view, the fundamental problem of
save area, it is still simplified though add some control low power consumption can be divided into four
logics. These modified structures are specifically major areas: device, circuit, structure and system. The
implemented for low power applications, and hardware prevalent scheme in circuit or structure area for low
cost is reduced at the same time. FPGA prototyping power design is to take advantage of pipeline or
results show the correctness of the proposed design, and parallel method. However, that method requires
it is synthesized by CSMC 180nm CMOS technology
reasonable tasks partitioning, which will result in
process with a clock frequency of 100 MHz, dynamic
power consumption of 8.2223mW and 12.2K equivalent
increasing complexity and difficulty as more
logic gates. developer kits are in need.
Display Data Upload
Keypad Audio
Index Terms—low power consumption, SD card
controller, asynchronous units, FSM adding low power
mode, one FIFO Keypad Audio Display
Control Codec Control
I. INTRODUCTION Sensors commu
Analog Front End
Global aging, limited energy sources, the demand Wireless
159
corresponding logic and state machine are realized. binary value through gray code conversion. Wfull
There are three state machines in this design, and rempty are not only the control signals of read
command FSM, data transmit FSM and data receive and write in FIFO, but also sent to master as interrupt
FSM. The general format for command and data is signals.
contain start bit, transmitter bit, content bits, cyclic
redundancy check bits and stop bit. There will be two
formats when response is necessary after card return
operating results.
Command transmit and data transmit contribute
to the vast majority of FSM in this design. Relative to
other controllers only wait start signals to initiate
transfer, this paper proposed a novel scheme in which
low consumption state is flexibly used. Clock source
of most components in CIU can be cut off when the
command FSM stay in idle state more than 100 clock
cycles. Since there is no command or data transfer
after a certain time, some parts is no need to continue
working, which causing power loss. Figure 4. Asynchronous FIFO structure diagram
In line with correlative researches, the major area
and consumption in the ASIC become the quantity of
flip-flops. Aiming at this issue, this design try to cut
short the amount of FIFO, to facilitate the data
transmission low-consumption and high-performance.
Firstly, SD card controller is a half-duplex
peripheral as mentioned. Then the sole FIFO can only
stores either receive data or transmit data at the same
time. This FIFO works in two different clock
domains. Experiment results in [7] prove that
comparing with synchronous FIFO, asynchronous
FIFO performs better in cutting area and reducing
consumption. But it will cause conflict quasi-steady
signals, which may lead to the design function of the
system failure. Synchronization units are put into use
in order to guarantee FIFO work normally. This
design provides two control signals named wen and
ren as FIFO enable signals, benefited by directly
Figure 3. Finite state machine flow diagram accessing enable signals no matter when to transmit
Figure 3 shows the final FSM structure. The or receive. As well the FIFO is asynchronous, a
improvements aforementioned reduce the power of multiplexer is supported to select accurate clock. At
CIU in this design. More to the point, consequent last, a process can interactive with BIU and CIU by
structure augment will be uncomplicated. means of control logic.
C. Simple Design for Data Temporary Storage IV. RESULTS AND DISCUSSIONS
Data transfer between BIU and CIU is an issue To ensure the design function properly, both
about transfer cross clock domain, and treatment of abundant random verification and certain application
asynchronous clock has been difficulties in circuit algorithms are combined applied for function
design. There are many solutions to this problem, simulation. FPGA prototyping is carried out with
such as the phase control method, double jump Xilinx XUPV5-LX110T platform and SanDish TF-
technology. However, these methods are low CLASS10 card is employed as the SD card model.
efficiency, the best approach is to use asynchronous Figure 5 illustrates the transmit procedure of the
FIFO, which passes signals between the clock controller in normal condition. When the command
regions is more flexible and commonly used [5]. start signal is high and relative data are ready,
Figure 5 illustrates the structure of this command FSM turns to cmd_tx state. Signal wire
asynchronous FIFO. Gray code is applied for the named cmd_out transmits command out. If this
judgment of full or empty on account of only one bit command expects response and data transmit, FSM
changing every time. Address of memory is normal turn to response_rx state after card send response.
160
Data transmit start when response is done and V. CONCLUSION
checked correctly. Data can transfer in block mode or To meet the requirement of low power
stream mode, and block mode need cyclic consumption for communication with SD card, this
redundancy check. paper proposes and implements a low power SD card
controller, with asynchronous units BIU and CIU set
for valid transfer, as well as an asynchronous FIFO
for data temporary storage and improved finite state
machine adding low power state. The proposed
controller is implemented by hardware description
language, and simulated on ModelSim. This design is
verified by FPGA, and synthesized in CSMC 180nm
CMOS technology process with a clock frequency of
100MHz, dynamic power consumption of 8.2223mW
and 12.2K logic gates consumed.
Figure 5. command and data transfer waveform REFERENCES
In proposed design, low power mode is realized. [1] Ismail, S.M.; Rahman, A.B.M.S.; Islam, F.T., "Low
If no command or data is in process over 100 clock power design of Johnson Counter using clock
cycles that is to say command FSM staying in idle gating," Computer and Information Technology
state more than 100 clock cycles, clock source of (ICCIT), 2012 15th International Conference,
most components in CIU can be cut off. In low power pp.510,517, 22-24 Dec. 2012.
mode, check command unit is still at work. Once [2] Tsung-Heng Tsai; Jia-Hua Hong; Liang-Hung Wang;
signal cmd_start which represents command will be Shuenn-Yuh Lee, "Low-Power Analog Integrated
transmitted is high, FSM jump out of low power Circuits for Wireless ECG Acquisition Systems,"
Information Technology in Biomedicine, IEEE
mode as shown in figure 6.
Transactions on, vol.16, no.5, pp. 907-917, Sept.
2012.
[3] Elkeelany, O.; Todakar, V.S., "Data concentration and
archival to SD card via hardware description
language," GLOBECOM Workshops (GC Wkshps),
2011 IEEE, pp.625-630, 5-9 Dec. 2011.
Figure 6. low power mode waveform [4] Ortega, C.; Tse, J.; Manohar, R., "Static Power
Communications between BIU and CIU should Reduction Techniques for Asynchronous Circuits,"
take asynchronous clocks into account. Signals from Asynchronous Circuits and Systems (ASYNC), 2010
BIU must transform to level before CIU sample them. IEEE Symposium on, pp.52-61, 3-6 May 2010.
Figure 7 show the waveform of signal transform, [5] Yanjun Zhang; Chunli Yi; Jinqi Wang; Jinye Zhang,
pulse signal is transformed to level signal in clock of "Asynchronous FIFO implementation using FPGA,"
Electronics and Optoelectronics (ICEOE), 2011
BIU domain. CIU sample this level signal and International Conference on, vol.3, pp.V3-207, V3-
generate pulse signal when level signal change. It is 209, 29-31 July 2011.
the same with signals from CIU to BIU. [6] Xinrui Zhang; Jian Wang; Yuan Wang; Dan Chen;
Jinmei Lai, "BRAM-based asynchronous FIFO in
FPGA with optimized cycle latency," Solid-State and
Integrated Circuit Technology (ICSICT), 2012 IEEE
11th International Conference on , pp.1-3, Oct. 29
2012-Nov. 2012.
[7] Xin Wang; Nurmi, J., "A RTL Asynchronous FIFO
Figure 7. waveform of signal transform Design Using Modified Micropipeline," Baltic
This design has been synthesized with CSMC Electronics Conference, 2006 International , pp.1,4,
180nm CMOS technology with a clock frequency of 2-4 Oct. 2006.
100MHz, dynamic power consumption of 8.2223mW, [8] Zhenlin Lu; Jingjiao Li; Yao Zhang, "The
and a hardware cost of 12.2K logic gates, as shown in Reading/Writing SD Card System Based on FPGA,"
Table 1. Pervasive Computing Signal Processing and
Table 1. Performance of the proposed controller Applications (PCSPA), 2010 First International
Technology CSMC180nm Conference on, pp.419-422, 17-19 Sept. 2010.
Core Area 0.16 mm2 [9] Yansi Yang; Yingyun Yang; Lipi Niu; Huabing Wang;
Logic Gates(2-in NAND) 12.2K Bo Liu, "Hardware system design of SD card reader
Operating Frequency 100MHz and image processor on FPGA," Information and
Dynamic Power 8.2223W Automation (ICIA), 2011 IEEE International
Conference on, pp.577-580, 6-8 June 2011.
161