DOI QR코드

DOI QR Code

Low-Complexity Deeply Embedded CPU and SoC Implementation

낮은 복잡도의 Deeply Embedded 중앙처리장치 및 시스템온칩 구현

  • 박성정 (건국대학교 전자공학부) ;
  • 박성경 (부산대학교 전자공학과)
  • Received : 2016.01.12
  • Accepted : 2016.03.03
  • Published : 2016.03.31

Abstract

This paper proposes a low-complexity central processing unit (CPU) that is suitable for deeply embedded systems, including Internet of things (IoT) applications. The core features a 16-bit instruction set architecture (ISA) that leads to high code density, as well as a multicycle architecture with a counter-based control unit and adder sharing that lead to a small hardware area. A co-processor, instruction cache, AMBA bus, internal SRAM, external memory, on-chip debugger (OCD), and peripheral I/Os are placed around the core to make a system-on-a-chip (SoC) platform. This platform is based on a modified Harvard architecture to facilitate memory access by reducing the number of access clock cycles. The SoC platform and CPU were simulated and verified at the C and the assembly levels, and FPGA prototyping with integrated logic analysis was carried out. The CPU was synthesized at the ASIC front-end gate netlist level using a $0.18{\mu}m$ digital CMOS technology with 1.8V supply, resulting in a gate count of merely 7700 at a 50MHz clock speed. The SoC platform was embedded in an FPGA on a miniature board and applied to deeply embedded IoT applications.

중앙처리장치를 중심으로 하는 각종 내장형 시스템은 현재 각종 산업에 매우 광범위하게 쓰이고 있다. 특히 사물인터넷 등의 deeply embedded (심층 내장형) 시스템은 저비용, 소면적, 저전력, 빠른 시장 출시, 높은 코드 밀도 등을 요구한다. 본 논문에서는 이러한 요구 조건을 만족시키는 중앙처리장치를 제안하고, 이를 중심으로 한 시스템온칩 플랫폼을 소개한다. 제안하는 중앙처리장치는 16 비트라는 짧은 명령어로만 이루어진 확장형 명령어 집합 구조를 갖고 있어 코드 밀도를 높일 수 있다. 그리고, 다중사이클 아키텍처, 카운터 기반 제어 장치, 가산기 공유 등을 통하여 로직 게이트가 차지하는 면적을 줄였다. 이 코어를 중심으로, 코프로세서, 명령어 캐시, 버스, 내부 메모리, 외장 메모리, 온칩디버거 및 주변 입출력 장치들로 이루어진 시스템온칩 플랫폼을 개발하였다. 개발된 시스템온칩 플랫폼은 변형된 하버드 구조를 갖고 있어, 메모리 접근 시 필요한 클락 사이클 수를 감소시킬 수 있었다. 코어를 포함한 시스템온칩 플랫폼은 상위 언어 수준과 어셈블리어 수준에서 모의실험 및 검증하였고, FPGA 프로토타이핑과 통합형 로직 분석 및 보드 수준 검증을 완료하였다. $0.18{\mu}m$ 디지털 CMOS 공정과 1.8V 공급 전압 하에서 ASIC 프론트-엔드 게이트 수준 로직 합성 결과, 50MHz 동작 주파수에서 중앙처리장치 코어의 논리 게이트 개수는 7700 수준이었다. 개발된 시스템온칩 플랫폼은 초소형 보드의 FPGA에 내장되어 사물인터넷 분야에 응용된다.

Keywords

References

  1. M. Wright, "Deeply Embedded Devices: The Internet of Things," Electronic Design, http://electronicdesign.com/energy/deeply-embedded-devi ces-internet-things, Sep. 23, 2009.
  2. Y. Sun, W.-L. Huang, S.-M. Tang, X. Qiao, and F.-Y. Wang, "Design of an OSEK/VDX and OSGi-Based Embedded Software Platform for Vehicular Applications," IEEE International Conference on Vehicular Electronics and Safety, pp. 1-6, Dec. 2007. DOI: http://dx.doi.org/10.1109/ICVES.2007.4456366
  3. D. A. Patterson and J. L. Hennessy, Computer Organization and Design, Elsevier, Morgan Kaufmann Publishers, 2010, 4th Ed.
  4. Extendable Instruction Set Computer, http://en.wikipedia.org/wiki/Extendable_instruction_set_computer, Wikipedia.
  5. B. Parhami, Computer Architecture, Oxford University Press, New York, NY, USA, 2005.
  6. H. Eberle, A. Wander, N. Gura, S. Chang-Shantz, and V. Gupta, "Architectural Extensions for Elliptic Curve Cryptography over GF(2m) on 8-Bit Microprocessors," IEEE Proceedings of the 16th International Conference on Application-Specific Systems, Architecture and Processors (ASAP'05), pp. 343-349, July, 2005. DOI: http://dx.doi.org/10.1109/ASAP.2005.15
  7. F.-C. Yang and I.-J. Huang, "An Embedded Low Power/Cost 16-Bit Data/Instruction Microprocessor Compatible with ARM7 Software Tools," Asia and South Pacific Design Automation Conference, Yokohama, Japan, pp. 902-907, Jan. 2007. DOI: http://dx.doi.org/10.1109/aspdac.2007.358104
  8. A. Asaduzzaman, "An Efficient Memory Block Selection Strategy to Improve the Performance of Cache Memory Subsystem," 14th International Conference on Computer and Information Technology, pp. 22-24, Dec. 2011. DOI: http://dx.doi.org/10.1109/iccitechn.2011.6164798
  9. Chih-Wen Hsueh, Jen-Feng Chung, Lan-Da Van, and Chin-Teng Lin, "Anticipatory Access Pipeline Design for Phased Cache," IEEE International Symposium on Circuits and Systems (ISCAS), pp. 18-21, May, 2008. DOI: http://dx.doi.org/10.1109/ISCAS.2008.4541924
  10. Peter Petrov and Daniel Tracy, "Energy-Efficient Physically Tagged Caches for Embedded Processors with Virtual Memory," Proceedings of 42nd Design Automation Conference, pp. 17-22, 2005. DOI: http://dx.doi.org/10.1109/dac.2005.193765
  11. Long Zheng, Mianxiong Dong, Song Guo, Minyi Guo, and Li Li, "I-Cache Tag Reduction for Low Power Chip Multiprocessor," IEEE International Symposium on Parallel and Distributed Processing with Applications, pp. 196-202, 2009. DOI: http://dx.doi.org/10.1109/ispa.2009.85
  12. R. V. Batchu and D. A. Jumenez, "Exploiting Procedure Level Locality to Reduce Instruction Cache Misses," Proceedings of the Eighth Workshop on Interaction between Compilers and Computer Architectures, pp. 75-84, 2004. DOI: http://dx.doi.org/10.1109/intera.2004.1299512
  13. Cillani Chayoor Abbas, Yian Zhu, Amjad Hafiz Muhammad, Ahmad Waqar, and Jianfeng An, "Backplane Bus Controller Implementation in FPGA for Hard Real Time Control Systems," 3rd International Conference on Communication Software and Networks, pp. 451-456, May, 2011. DOI: http://dx.doi.org/10.1109/iccsn.2011.6013870
  14. Chun-Ming Huang, Chien-Ming Wu, Chih-Chyau Yang, Wei-De Chien, Shih-Lun Chen, Chi-Shi Chen, Jiann-Jenn Wang, and Chin-Long Wey, "Implementation and Prototyping of a Complex Multi-Project System-on-a-Chip," IEEE International Symposium on Circuits and Systems (ISCAS), pp. 2321-2324, May, 2009. DOI: http://dx.doi.org/10.1109/ISCAS.2009.5118264