Contenu connexe
Similaire à 40120130405015 2
Similaire à 40120130405015 2 (20)
Plus de IAEME Publication
Plus de IAEME Publication (20)
40120130405015 2
- 1. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
INTERNATIONAL JOURNAL OF ELECTRONICS AND
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)
IJECET
ISSN 0976 – 6464(Print)
ISSN 0976 – 6472(Online)
Volume 4, Issue 5, September – October, 2013, pp. 143-151
© IAEME: www.iaeme.com/ijecet.asp
Journal Impact Factor (2013): 5.8896 (Calculated by GISI)
www.jifactor.com
©IAEME
MODELING AND SIMULATION OF TEST DATA COMPRESSION USING
VERILOG
MD. Ajmal Sadiq
T.Naga Raju
Asst. Professor
Dept of ECE, RVRIET, Ibrahimpatan
JNTU-Hyderabad, India
Asst. Professor
Dept of ECE, RVRIET, Ibrahimpatan
JNTU-Hyderabad, India
Kumar. Keshamoni
Asst. Professor
Dept of ECE, RVRIET, Ibrahimpatan
JNTU-Hyderabad, India
ABSTRACT
Increasing embedded systems functionality causes a steep increase in code size. For instance,
more than 60MB of software is installed in current state-of-the-art cars. It is often challenging and
cumbersome to host vast amount of software in an efficient way within a given hardware resource
budget of an embedded system. This may be done by using code compression techniques, which
compress the program code off-line (i.e. at design time) and decompress it on-line (i.e. at run
time).The overview of a traditional test compression framework is shown in Fig. 1. The original test
data is compressed and stored in the memory. Thus, the memory size is significantly reduced. An
on-chip decoder decodes the compressed test data from the memory and delivers the original
uncompressed set of test vectors to the design-under-test (DUT).The major contributions of this
paper are as follows: 1) it develops an efficient bitmask selection technique for test data in order to
create maximum matching patterns; 2) it develops an efficient dictionary selection method which
takes into account the bitmask based compression; and 3) it proposes a test compression technique
using efficient dictionary and bitmask selection to significantly reduce the testing time and memory
requirements.
Key words: SOC, BIST, ILS, ATE, LAT, DCE, DUT, Compression, Dictionary
143
- 2. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
1. INTRODUCTION
Embedded systems are everywhere from household appliances to biomedical, military,
ed
geological and space equipments. The complexity of such systems is increasing at an exponential
rate due to both advancements in technology and demands for sophisticated applicati
applications, in the areas
of communication, multimedia, networking and entertainment. Memory is one of the key driving
factors in embedded system design since a larger memory indicates an increased chip area and a
higher cost. As a result, memory imposes constraints on the size of the application programs. Test
constraints
Data compression techniques address the problem by reducing the program size.
IN SYSTEM-ON-CHIP (SOC) designs, higher circuit densities have led to larger volume of
CHIP
test data, which demands larger memory requirement in addition to an increased testing time. Test
data compression plays a crucial role, reducing the testing time and memory requ
requirements. It also
overcomes the automatic test equipment (ATE) bandwidth limitation. Alternatives to external testing
include built-in self-test (BIST). However, BIST is not appropriate for logic testing because of its
test
random-resistant fault and bus contention during test application, which leads to inadequate test
resistant
contention
coverage. Other alternatives like bit-flipping and bit fixing provide greater fault coverage, with the
bit flipping
disadvantage that structural information has to be provided. Reduction of test data using structural
st
methods like Illinois Scan Architecture (ILS) demands modification of the design. Test data
compression algorithms can reduce the test data to a larger degree without facing any of the
aforementioned disadvantages.
Fig 1.1 Test Data Compression Methodology
The overview of a traditional test compression framework is shown in Fig. 1.1 The original
test data is compressed and stored in the memory. Thus, the memory size is significantly reduced. An
on-chip decoder decodes the compressed test data from the memory and delivers the original
chip
test
uncompressed set of test vectors to the design-under-test (DUT). Compression ratio, widely accepted
design
as a primary metric for measuring the efficiency of test data compression, is defined as:
Dictionary-based test data compression is a promising approach. Dictionary
based
Dictionary-based
compression techniques are also popular in embedded systems domain since they provide a dual
advantage of good compression efficiency as well as fast decompression mechanism.
Many recently proposed techniques have tried to improve the dictionary-based compression
dictionary based
techniques by considering mismatches. However, the efficiency of these techniques depends on the
number of bits allowed to mismatch. It is obvious that if more number of bit changes is allowed,
number
more matching patterns will be generated. However, remembering more bit Positions may lead to
unprofitable compression. Bitmask based compression addresses this issue by creating more
Bitmask-based
144
- 3. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
matching patterns with the aid of bitmasks, while taking care of the size of the compressed code.
bitmasks,
This paper tries to combine the advantages of dictionary based test compression as well as bitmask
bitmaskbased test data compression.
Bitmask based compression of test data may seem attractive, but it pr
presents various
challenges. The primary concern is the presence of don’t cares (“X”) in the test data set. Since
bitmask based compression technique was not designed for data with don’t care values, direct
application of this technique on test data does not result in a good compression efficiency. We have
to determine not only the effective bitmasks, but also a profitable dictionary that produces optimal
results. We demonstrate in Section III that selection of bitmasks and dictionary using existing
techniques are not appropriate in case of test data compression using bitmasks. Our approach solves
s
these problems by selecting profitable bitmasks as well as proposing efficient dictionary selection
algorithms, to improve the compression efficiency without introducing any additional decompression
introducing
penality.
2. DICTIONARY-BASED COMPRESSION
This chapter describes existing dictionary based approaches and analyzes their limitations.
dictionary-based
First, a standard dictionary-based approach is discussed. Next, we describe a recently proposed
based
technique that improves the standard approach by considering mismatches (hamming distance).
Finally, we present a detailed cost-benefit analysis of the recent approaches in terms of how much
benefit
repeating patterns they can generate from the mismatches. This analysis forms the basis of my thesis
mismatches.
work to maximize the repeating patterns using bit-masks.
bit
2.1 Dictionary-based Approach
Dictionary-based test data compression techniques provide compression efficiency as well as
based
fast decompression mechanism. The basic idea is to take the advantage of commonly occurring
instruction sequences by using a dictionary. The repeating occurrences are replaced by a word that
points to the index of the dictionary that contains the pattern. Figure 2–1 shows an example of
2 1
dictionary based test data compression using a simple program binary. The binary consists of ten 8
8bit patterns i.e., total 80 bits. The dictionary has two 8-bit entries. The compressed program requires
8 bit
62 bits and the dictionary requires 16 bits. In this case, the compression ratio is 97.5% (using
Equation (1.1)). This example shows a variable length encoding. As a result, there are m
many factors
that also need to be included in the computation of the compression ratio including the size of the
Line Address Table (LAT) as well as byte alignment for branch targets.
Fig 2.1 Dictionary Based Compression Approach
145
- 4. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
2.2 Improved Dictionary-based Approach
based
Recently proposed techniques improve the dictionary based compression technique by
considering mismatches. The basic idea is to determine the instruction sequences that are different in
few bit positions (hamming distance) and store that information in the compressed program and
information
update the dictionary (if necessary). The compression ratio will depend on how many bit changes are
considered during compression. Figure 2–2 shows the encoding format used by these techniques for
2 2
32-bit program code.
Figure 2.2: Enc
coding Scheme for Incorporating Mismatches
It is obvious that if more bit changes are allowed, more matching sequences will be
generated. However, the size of the compressed program will increase depending on the number of
bit positions. Section 2.3 describes this topic in detail. Prakash et al considered only one
one-bit change
for 16-bit patterns (vectors). Ros et al. considered a general scheme of up to 7 bit changes for 32
bit
32-bit
patterns and concluded that a 3-bit change provides best compression ratio.
bit
Fig 2.3: Improved Dictionary Based Compression Technique
Figure 2–3 shows the improved dictionary based scheme using the same example (
3
(shown in
Figure 2–1). This example considers only 1-bit change. An extra field is necessary to indicate
1).
1 bit
whether mismatches are considered or not. In case a mismatch is considered, another field is
necessary to indicate the bit position that is different from an entry in the dictionary. For example,
the third pattern (from top) in the original program is different from the first dictionary entry (index
0) on the sixth bit position (from left). The compression ratio for this example is 95%.
3. TEST DATA COMPRESSION USING BIT-MASKS
ATA
BIT
The proposed approach tries to incorporate maximum bit changes using mask patterns
without adding significant cost (extra bits) such that the compression ratio is improved. Our
compression technique also ensures that the decompression efficiency is improved or remains the
same compared to the existing techniques.
146
- 5. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
Figure 3–1: Encoding Format for Our Compression Technique
1:
Figure 3–1 shows the generic encoding scheme used by the compression technique. This
1
scheme is similar to the 32-bit format shown in Figure 2 2 where individual bit changes are
bit
2–2
recorded. However, as described in Section 2.3, storing individual bit changes limits the number of
limits
matches. Our encoding format (Figure 3– 1) can store information regarding multiple mask patterns.
3
For each pattern, it stores the mask type, the location where mask needs to be applied, and the mask
pattern. The generic encoding scheme can be optimized once the types and sizes of the bitmask
combinations are determined.
Test Data compression using bit masks is a promising approach. However, it introduces two
bit-masks
major challenges. First, how to select a set of mask
mask-patterns that will maximize the matching
ll
sequences while minimize the cost of using bit-masks? Second, how to perform efficient dictionary
bit masks?
selection using the selected bit-masks. We have developed efficient mask selection and dictionary
masks.
selection technique to improve compression ratio with introducing any decompression penalty. This
compression
chapter is organized as follows. Section 3.1 describes our mask selection procedure. Section 3.2
outlines our dictionary selection technique. Section 3.3 presents our test data compression algo
algorithm
using the mask selection and the dictionary selection procedures. Finally, Section 3.4 describes the
decompression framework to support our bit-mask based test data compression technique.
bit mask
3.1.Decompression Technique
The design of a decompression engine (DCE), shown in Figure3.3, that can easily handle
bitmasks and provide fast decompression. The design of our engine is based on the one cycle
decompression engine proposed by Seong et al. The most important feature is the introduction of
he
XOR gate in addition to the decompression scheme for dictionary based compression. The
decompression engine generates a test data length bitmask, which is then XORed with the dictionary
entry. The test data length bitmask is created by applying the bitmask on the specified position in the
applying
encoding.
Figure 3.3: Decompression engine for bitmask-based encoding
147
- 6. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
The generation of bitmask is done in parallel with dictionary access, thus reducing additional
penalty. The DCE can decode more than one compressed data in one cycle. Algorithm 2 provides an
than
overview of our decompression procedure. The decompression engine takes the compressed vector
as input. It checks the first bit to see whether the data is compressed. If the first bit is “1” (im
(implies
uncompressed), it directly sends the uncompressed data to the output buffer. On the other hand, if the
first bit is a “0”, it implies this is a compressed data. Now, there are two possibilities in this scenario.
The data may be compressed directly using dictionary entry or may have use bitmasks. The
using
decompression engine will operate differently in these two cases.
4. SIMULATION RESULTS
4.1.Compression
This module is used to integrate all the modules. This is the top module for compression. Test
vectors and bit masking type are given to this module and we will get dictionary table and
compressed data as outputs.
Figure 4.11: Block Diagram of Compression
4.11
Figure 4.12 Waveform of Compression
4.12:
148
- 7. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
4.2.Decompression
This module is used to decompress the data. Compressed data is decompressed using
dictionary table and we will get original uncompressed data.
Figure 4.13 Block Diagram of Decompression
Figure 4.14 Waveform of Decompression
5. CONCLUSIONS
Embedded systems are constrained by the memory size. Test Data compression techniques
address this problem by reducing the code size of the application programs. Dictionary
Dictionary-based code
compression techniques are very popular since they generate good compression by exploiting
compression
repeating patterns. Recent techniques uses bit toggle information to create matching patterns and
thereby improve compression ratio. However, due to lack of efficiency in matching scheme, the
existing techniques can match up to three bit differences.
149
- 8. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
In the thesis, I presented an efficient test data compression scheme using bit-masks that can
significantly increase the number of matching patterns. This approach can handle multiple bit
mismatches without incurring any compression or decompression penalty. Moreover, I examined and
presented the approaches for the two challenges that were introduced by the proposed technique: the
choice of the mask combination and the dictionary entry selection. I applied the technique using
applications from various domains and compiled them for different architectures to demonstrate the
usefulness of the approach. The experimental results show that the proposed technique reduces the
original program size up to 45%. This technique outperforms all the existing dictionary based
techniques by an average of 15%, giving compression ratios of 55%-65%. It also enables parallel
decompression that is suitable for VLIW processors.
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
L. Li, K. Chakrabarty, and N. Touba, “Test data compression using dictionaries with
selective entries and fixed-length indices,” ACM Trans.Des. Autom. Electron. Syst., vol. 8,
no. 4, pp. 470–490, 2003.
H. Wunderlich and G. Kiefer, “Bit-flipping BIST,” in Proc. Int. Conf.Comput.-Aided Des.,
1996, pp. 337–343.
N. Touba and E. McCluskey, “Altering a pseudo-random bit sequence for scan based bist,” in
Proc. Int. Test Conf., 1996, pp. 167–175.
F. Hsu, K. Butler, and J. Patel, “A case study on the implementation of Illinois scan
architecture,” in Proc. Int. Test Conf., 2001, pp. 538–547.
M. Ros and P. Sutton, “A hamming distance based VLIW/EPIC code compression
technique,” in Proc. Compilers, Arch., Synth. Embed.Syst., 2004, pp. 132–139.
S. Seong and P. Mishra, “Bitmask-based code compression for embedded systems,” IEEE
Trans. Comput.-Aided Des. Integr. Circuits Syst., vol. 27, no. 4, pp. 673–685, Apr. 2008.
M.-E. N. A. Jas, J. Ghosh-Dastidar, and N. Touba, “An efficient test vector compression
scheme using selective Huffman coding,” IEEE Trans. Comput.-Aided Des. Integr. Circuits
Syst., vol. 22, no. 6, pp.797–806, Jun. 2003.
X. Kavousianos, E. Kalligeros, and D. Nikolos, “Multilevel-Huffman test-data compression
for IP cores with multiple scan chains,” IEEE Trans. Very Large Scale Integr. (VLSI) Syst.,
vol. 16, no. 7, pp. 926–931,Jul. 2008.
X. Kavousianos, E. Kalligeros, and D. Nikolos, “Multilevel Huffman coding: An efficient
test-data compression method for IP cores, ”IEEE Trans. Comput.-Aided Des. Integr. Circuits
Syst., vol. 26, no. 6, pp.1070–1083, Jun. 2007.
X. Kavousianos, E. Kalligeros, and D. Nikolos, “Test data compression based on variable-tovariable Huffman encoding with codeword reusability,” IEEE Trans. Comput.-Aided Des.
Integr. Circuits Syst., vol. 27, no. 7, pp. 1333–1338, Jul. 2008.
Hemraj Kumawat and Jitendra Chaudhary, “Optimization of LZ77 Data Compression
Algorithm”, International Journal of Computer Engineering & Technology (IJCET),
Volume 4, Issue 5, 2013, pp. 42 - 48, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375.
V. Hari Prasad, “A New Revisited Compression Technique Through Innovative Partition
Group Binary Compression: A Novel Approach”, International Journal of Computer
Engineering & Technology (IJCET), Volume 4, Issue 2, 2013, pp. 94 - 101, ISSN Print:
0976 – 6367, ISSN Online: 0976 – 6375.
Priya Mukherjee and P.A.Nageswara Rao, “Automatic Baud Rate Detection using
Programmable System on Chip (PSoC)”, International Journal of Electronics and
Communication Engineering & Technology (IJECET), Volume 3, Issue 2, 2012,
pp. 130 - 140, ISSN Print: 0976- 6464, ISSN Online: 0976 –6472.
150
- 9. International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 –
6464(Print), ISSN 0976 – 6472(Online) Volume 4, Issue 5, September – October (2013), © IAEME
ABOUT THE AUTHORS
AJMAL SADIQ. MAHAMMAD, Asst. Professor
Received B.Tech degree in Electronics and Communication Engineering from the
University of JNTU and M.E degree in Digital Systems from the Osmania
University, Hyderabad. He is currently working as an Asst. Professor in ECE
Department at RVR Institute of Engineering & Technology, Hyderabad. Up to
now he was attended several National and International Conferences, Workshops.
His currently research interests include VLSI Design, Image Processing, Antennas
&Microwave, Digital Signal Processing.
T. NAGA RAJU, Asst. Professor
Received B.Tech degree in Electronics and Communication Engineering from the
University of JNTU Hyderabad and M.Tech degree in VLSI System Design from
the JNTU-Hyderabad. He is currently working as an Asst. Professor in ECE
Department at RVR Institute of Engineering & Technology, Hyderabad. Up to
now he was attended several National and International Conferences, Workshops.
His currently research interests include VLSI Design, Image Processing,
Antennas &Microwave, Digital Signal Processing.
KUMAR.KESHAMONI, Asst. Professor
Kumar. Keshamoni obtained his B.Tech in Electronics & Communication
Engineering from the University of JNTU, his M.Tech in VLSI Design from the
University of JNTU-Hyderabad. He is currently the Assistant Professor in
Department of Electronics & Communication Engineering, RVR Institute of
Engineering in University of the JNTU-Hyderabad. Kumar. Keshamoni is Chair
of World Committees Associate Member of UACEE (Universal Association of
Computer & Electronics Engineers), Member of IAENG (International
Association of Engineers) and an Advisory Board of WATT (World Association
of Technology Teachers). He is also on the Advisory & Editorial Board of
IJETAE, an Associate Editor of IJPRET, Editor of IJOART, Editorial Board & Review Committee
of IJSER, an Editorial & Review Board of IJTRA, Editor, writer & Peer Reviewer of edition
International Publisher, Peer Reviewer of AJET, Review Committee of IJERT, Editorial & Review
Board of IJOAR, Review Board of IJASCSE, Advisory& Editorial Board of IJRDET, Member of
IAENG, Writer& Review Board of IJEVS, Advisory Board of WRJET, Scientific Committee &
Editorial Review Board on Engineering and Physical Sciences of WASET and Editorial Board of
IAASSE. He is also working as a member for 5 International conference committees. He has
published about 13 research articles in International Journals and 5 papers in National and
International Conferences and attended several National, International Conferences, and Workshops
& Faculty Development Programs in different organizations. His recent research interests lie in the
area of Embedded, VLSI Design, Digital Signal Processing and Nanotechnology.
151