차량에 사용되는 ECU에는 CPU 코어, 차량통신 콘트롤러, 메모리 인터페이스, 센서 인터페이스, I/O 인터페이스 등이 집적되어 있다. 현재 사용되는 차량용 ECU는 대부분 자사만의 독점적 프로세서 아키텍쳐로 개발하였으나, 최근 자율주행자동차 및 커넥티드카에서 소프트웨어 범용성을 위해 ARM, RISC-V와 같은 표준 프로세서를 기반으로 한 차량용 ECU의 수요가 급증하고 있다. 본 논문에서는 명령어 집합이 무료로 공개된 RISC-V를 기반으로 하여 주차 보조 시스템에 사용하기 위한 차량용 ECU를 설계하였다. 개발된 ECU는 32b RISC-V CPU 코어, CAN, LIN 등의 IVN 콘트롤러, ROM, SRAM 등의 메모리 인터페이스, SPI, UART, I2C 등의 I/O 인터페이스를 내장하였다. 65nm CMOS 공정에서 구현한 결과는 동작 주파수 50MHz, 면적 0.37㎟, 게이트 수 55,310개였다.
차량에 사용되는 ECU에는 CPU 코어, 차량통신 콘트롤러, 메모리 인터페이스, 센서 인터페이스, I/O 인터페이스 등이 집적되어 있다. 현재 사용되는 차량용 ECU는 대부분 자사만의 독점적 프로세서 아키텍쳐로 개발하였으나, 최근 자율주행자동차 및 커넥티드카에서 소프트웨어 범용성을 위해 ARM, RISC-V와 같은 표준 프로세서를 기반으로 한 차량용 ECU의 수요가 급증하고 있다. 본 논문에서는 명령어 집합이 무료로 공개된 RISC-V를 기반으로 하여 주차 보조 시스템에 사용하기 위한 차량용 ECU를 설계하였다. 개발된 ECU는 32b RISC-V CPU 코어, CAN, LIN 등의 IVN 콘트롤러, ROM, SRAM 등의 메모리 인터페이스, SPI, UART, I2C 등의 I/O 인터페이스를 내장하였다. 65nm CMOS 공정에서 구현한 결과는 동작 주파수 50MHz, 면적 0.37㎟, 게이트 수 55,310개였다.
Automotive ECU integrates CPU core, IVN controller, memory interface, sensor interface, I/O interface, and so on. Current automotive ECUs are often developed with proprietary processor architectures. However, demends for standard processors such as ARM and RISC-V increase rapidly for saftware compat...
Automotive ECU integrates CPU core, IVN controller, memory interface, sensor interface, I/O interface, and so on. Current automotive ECUs are often developed with proprietary processor architectures. However, demends for standard processors such as ARM and RISC-V increase rapidly for saftware compatibility in autonomous vehicles and connected cars. In this paper, an automotive ECU is designed for parking assist system based on RISC-V with open instruction set architecture. It includes 32b RISC-V CPU core, IVN controllers such as CAN and LIN, memory interfaces such as ROM and SRAM, and I/O interfaces such as SPI, UART, and I2C. Fabricated in 65nm CMOS technology, its operating frequency, area, and gate count are 50MHz, 0.37㎟, and 55,310 gates, respectively.
Automotive ECU integrates CPU core, IVN controller, memory interface, sensor interface, I/O interface, and so on. Current automotive ECUs are often developed with proprietary processor architectures. However, demends for standard processors such as ARM and RISC-V increase rapidly for saftware compatibility in autonomous vehicles and connected cars. In this paper, an automotive ECU is designed for parking assist system based on RISC-V with open instruction set architecture. It includes 32b RISC-V CPU core, IVN controllers such as CAN and LIN, memory interfaces such as ROM and SRAM, and I/O interfaces such as SPI, UART, and I2C. Fabricated in 65nm CMOS technology, its operating frequency, area, and gate count are 50MHz, 0.37㎟, and 55,310 gates, respectively.
그림6 은차량용ECU칩의타이밍검증결과이며, IDEC 에서제공한Primetime을이용하여50MHz기준으로 20ns가 넘지 않도록 타이밍을 검증하였다. Back-End Desing 과정에서는 공정사로부터 제공받은 Standard Cell과 I/O Cell을 배치하는 과정으로, IDEC에서제공한ICCompiler툴을사용하여파워 및 그라운드 라인을 배치하고 DRC (Design Rule Check) 및 LVS(Layout Versus Schematic) 만족 여부를 검증하였다.그림 7은설계한차량용 ECU 칩의최종레이아웃으로, 동작주파수, 칩면적, 게이트 수는 각각 50MHz, 0.
본 논문에서는 RISC 구조를 가지는 CPU 중에서 ARM에 비해 아키텍쳐 및 명령어 집합이 무료로 공개되어있고 표1과 같이 면적, 전력, data-checked="false">성능이우수한RISC-V를사용하였다[4].RISC-V코 어는32비트또는64비트중에서선택이가능한데, AMBA(Advanced Microcontroller Bus Architecture) 버스로연결할다른IP와의호환성을위해32비트 코어인RISC-VE20CPU[5]를선택하였다.
data-checked="false">설계된ECU를검증하기위해서CAN통신프로토콜을이용하여2개의테스트시나리오를구성하 였다.첫번째테스트시나리오는그림2와같이버 스 상에 3개의 CAN노드 A, B, data-checked="false">C가연결되어있을때①과같이RISC-V의SRAM영역에저장한 4개의 32비트데이터를 CAN 노드 A가노드 B로 전송하고 ②와 같이 전송을 마친 후 일정 시간을 대기하였다가③과같이다시노드 data-checked="false">A가노드C에게다른8개의32비트데이터를전송하는시나리오 이다.
첫번째테스트시나리오는그림2와같이버 스 상에 3개의 CAN노드 A, B, data-checked="false">C가연결되어있을때①과같이RISC-V의SRAM영역에저장한 4개의 32비트데이터를 CAN 노드 A가노드 B로 전송하고 ②와 같이 전송을 마친 후 일정 시간을 대기하였다가③과같이다시노드 data-checked="false">A가노드C에게다른8개의32비트데이터를전송하는시나리오 이다.두번째테스트시나리오는그림3과같이4개 의 CAN 노드가 버스에 연결되어 노드 C가 CAN ID0×63을받았을때①과같이노드 C가가지고있던8개의 32비트데이터값을송신하고②와같이 노드 A와노드 D가수신받는시나리오이다. 본논문에서설계한차량용ECU는RISC-V를기반 으로 Verilog HDL을 이용하여 구현하였으며, IDEC (ICDesignEducationCenter)에서제공한ModelSim 을이용하여시뮬레이션을진행하였다.
버스브릿지를 이용하여 AMBA AHB(AdvancedHigh-PerformanceBus)버스및AMBA APB(AdvancedPeripheralBus)버스와연결이가 능하며, 통신프로토콜중LINeLIN2.2A표준을, CANeCAN 2.0A와CAN 2.0B를 모두 만족하도록 설계하였다.
본 논문에서는 RISC 구조를 가지는 CPU 중에서 ARM에 비해 아키텍쳐 및 명령어 집합이 무료로 공개되어있고 표1과 같이 면적, 전력, data-checked="false">성능이우수한RISC-V를사용하였다[4].RISC-V코 어는32비트또는64비트중에서선택이가능한데, AMBA(Advanced Microcontroller Bus Architecture) 버스로연결할다른IP와의호환성을위해32비트 코어인RISC-VE20CPU[5]를선택하였다.
특히RISC-V의경우ARM과는 달리 명령어 집합(ISA:instruction set architecture) 이오픈소스로공개되어있을뿐만아니라성능측 면에서도 상용화에 충분하도록 높은 수준의 data-checked="false">사양을갖추어서많은반도체회사들이사용하고있다. 본 논문에서는 RISC-V CPU 코어를 data-checked="false">기반으로주차보조시스템에사용하기위한차량용ECU를 설계하고VerilogHDL을이용하여구현하였다.또 한 65nmCMOS공정으로제작하였다.
두번째테스트시나리오는그림3과같이4개 의 CAN 노드가 버스에 연결되어 노드 C가 CAN ID0×63을받았을때①과같이노드 C가가지고있던8개의 32비트데이터값을송신하고②와같이 노드 A와노드 D가수신받는시나리오이다. 본논문에서설계한차량용ECU는RISC-V를기반 으로 Verilog HDL을 이용하여 구현하였으며, IDEC (ICDesignEducationCenter)에서제공한ModelSim 을이용하여시뮬레이션을진행하였다.그림4와그림 5는 각각 그림 2와 그림 3의테스트시나리오에대한 시뮬레이션 결과이며, 테스트 시나리오대로 전 송이 이루어지는 것을 확인할 수 있다.
트웨어도해당제조사만을따라갈수밖에없다.최근 자율주행자동차및커넥티드카에서소프트웨어개발 및 호환성 문제로 인해 ARM[1], RISC-V[2][3] 등사 실상 표준(De Facto Standard)인 CPU(Central ProcessingUnit)의수요가급격히늘고있으며, data-checked="false">이에따라많은반도체회사들이자사가기존에보유 하고 있던 ARM, RISC-V CPU 코어에 각종주변 IP(IntellectualProperty)를결합하여차량용ECU를 개발하기시작하였다.특히RISC-V의경우ARM과는 달리 명령어 집합(ISA:instruction set architecture) 이오픈소스로공개되어있을뿐만아니라성능측 면에서도 상용화에 충분하도록 높은 수준의 data-checked="false">사양을갖추어서많은반도체회사들이사용하고있다.
대상 데이터
한다. 본 논문에서는 LIN(Local Interconnect Network) [6][7], CAN(ControllerAreaNetwork) [8]-[10] 등의차량통신 콘트롤러, ROM, SRAM 등의 메모리 인터페이스, SPI(SerialPeripheral Interface), UART (Universal Asynchronous Receiver/Transmitter), I2C(Inter-IntegratedCircuit)등의I/O인터페이스 를 내장하였다.
본논문에서설계한주차보조시스템용차량용 ECU를65nmCMOS공정을사용하여검증하였다. Front-End Design 단계에서는 주로 칩의 data-checked="false">동작을위한타이밍부분을중점적으로검증하였다.
였다.첫번째테스트시나리오는그림2와같이버 스 상에 3개의 CAN노드 A, B, data-checked="false">C가연결되어있을때①과같이RISC-V의SRAM영역에저장한 4개의 32비트데이터를 CAN 노드 A가노드 B로 전송하고 ②와 같이 전송을 마친 후 일정 시간을 대기하였다가③과같이다시노드 data-checked="false">A가노드C에게다른8개의32비트데이터를전송하는시나리오 이다.두번째테스트시나리오는그림3과같이4개 의 CAN 노드가 버스에 연결되어 노드 C가 CAN ID0×63을받았을때①과같이노드 C가가지고있던8개의 32비트데이터값을송신하고②와같이 노드 A와노드 D가수신받는시나리오이다.
Y. Lee et al, "Raven: A 28nm RISC-V vector processor with integrated switched-capacitor DC-DC converters and adaptive clocking," Proceedings of IEEE Hot Chips Symposium, pp.1-45, 2015. DOI: 10.1109/HOTCHIPS.2015.7477469
ISO 17987-1:2016, "Road vehicles-Local Interconnect Network (LIN)-Part 1: General information and use case definition," https://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber61222
J. Lee and S. Lee "Design and Verification of Automotive LIN Controller," J.inst.Korean. electr. elctron.eng., vol.20, no.3, pp.333-336, 2016. DOI: 10.7471/ikeee.2016.20.3.333
ISO 11898-1:2015, "Road Vehicles-Controller Area Network (CAN)-Part 1: Data Link Layer and Physical Signalling," https://www.iso.org/standard/63648.html
J. Lee and S. Lee "Design and Verification of Automotive CAN Controller," J.inst.Korean. electr. elctron.eng., vol.21, no.2, pp.162-165, 2017. DOI: 10.7471/ikeee.2017.21.2.162
J. Lee and S. Lee "Implementation and Verification of Automotive CAN-FD Controller," J.inst.Korean.electr.elctron.eng., vol.21, no.3, pp. 240-243, 2017. DOI: 10.7471/ikeee.2017.21.3.240
※ AI-Helper는 부적절한 답변을 할 수 있습니다.