Title :
A Trace-Capable Instruction Cache for Cost-Efficient Real-Time Program Trace Compression in SoC
Author :
Lai, Chun-Hung ; Yang, Fu-Ching ; Huang, Ing-Jer
Author_Institution :
Dept. of Comput. Sci. & Eng., Nat. Sun Yat-Sen Univ., Kaohsiung, Taiwan
Abstract :
This paper presents a novel approach to make the on-chip instruction cache of a SoC to function simultaneously as a regular instruction cache and a real-time program trace compressor, named trace-capable cache (TC-cache). It is accomplished by exploiting the dictionary feature of the instruction cache with a small support circuit attached to the side of the cache. Compared with related work, this work has the advantage of utilizing the existing instruction cache, which is indispensable in modern SoCs, and thus saves significant amount of hardware resource and power consumption. The TC-cache can be configured to work simultaneously as the instruction cache and the trace compressor, named the online mode, or exclusively as the trace compressor, named the bypass mode. The RTL implementation of a 4 KB trace-capable instruction cache, a 4 KB data cache, and an academic ARM processor core has been accomplished. The experiments show that the TC-cache achieves average compression ratio of 90 percent with a very small hardware overhead of 3,652 gates (1.1 percent). It takes only 0.2 percent additional system power for the online mode operation. In addition, the trace support circuit does not impair the global critical path. Therefore, the proposed approach is a highly feasible on-chip debugging/monitoring solution for SoCs, even for cost-sensitive ones such as consumer electronics. Furthermore, the same concept can be applied to the data cache to compress the data address trace as well.
Keywords :
cache storage; consumer electronics; data compression; program debugging; real-time systems; system-on-chip; ARM processor core; SoC; TC cache; bypass mode; consumer electronics; cost efficient real time program trace compression; data address trace; data cache; dictionary feature; hardware resource; on-chip debugging-monitoring solution; on-chip instruction cache; online mode operation; power consumption; real time program trace compressor; trace capable instruction cache; Central Processing Unit; Instruction sets; Random access memory; Real time systems; System-on-a-chip; Program trace; cache; compression; real time.;
Journal_Title :
Computers, IEEE Transactions on
DOI :
10.1109/TC.2010.194