핵심 프로세서 Core-A 활용확신 지원사업 Core-A 프로세서 지원센터. 핵심 프로세서 Core-A 활용확산 지원사업 t Core-A Processor Cache & MMU & Debugger Tool Chain & Implementation Core-A Homepage.

Slides:



Advertisements
Similar presentations
Embedded System 2009 년 11 월 16 일 Embedded Computer1 ● Hardware 와 Software 가 조합되어 특정한 복적을 수행하는 시스템 ● 특정한 기능을 수행하도록 Micro Processor 와 I/O Device 를 내장하며,
Advertisements

ARM core UNIT 03 로봇 SW 교육원 조용수. 학습 목표 PIC, AVR, 8051 ARM 이란 ? ARM 특징 ARM and Thumb ARM Cortex-M0 Interrupt Vector 2.
1/37 Chapter 4: 프로세서 성능과 휴대성을 위한 하드웨어 © The McGraw-Hill Companies, Inc., 세기의 가장 중요한 발명품 : 마이크로 프로세서 일상생활에 널리 사용됨 프로그램에 의한 적응성.
컴퓨터의 구조 2006년 2학기 컴퓨터의 개념 및 실습.
Embedded System Hardware와 software가 조합되어 특정한 목적을 수행하는 시스템
마이크로 컨트롤러 Microcontroller.
마이크로프로세서설계 - 3 ATmega128 마이크로컨트롤러의 특징 LED 실습 1
Chapter 9. 컴퓨터설계기초 9-1 머리말 9-2 데이터 처리장치 (Datapath)
ISA 심화 및 start.S code 분석 SIOR 15th 최재훈.
2007년 1학기 전산학개론 성신여자대학교 컴퓨터정보학부
Linux Debugging issues
Project Goal..! Milestone Role Division Achievement Result
AMBA BUS Protocol의 이해 (AMBA 2.0 Specification)
DSP based Data Acquisition Board
제8장. RISC 및 슈퍼스칼라 프로세서 8.1 RISC의 출현 동기 8.2 RISC의 발전 경위
제 2장 컴퓨터 구조.
프로그램 제어 분기(branch)와 점프(jump) 명령어 PC의 값의 변경 순차적인 프로그램의 진행순서가
IT R&D Global Leader Finger Motion 인식 SoC ETRI Technology Marketing
Signal 자연계에 존재하는 모든 정보전달의 수단 신호의 공학적 표현 물소리, 바람소리, 새소리 짐승소리,불,연기,봉화…
마이크로프로세서(Microprocessor,µP)
기본 컴퓨터 프로그래밍 Lecture #6.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
2 Part 전자계산기 구조 1. 논리 회로 2. 자료 표현 및 연산 3. 명령어 및 프로세서 4. 명령 수행 및 제어 5.
제어기술 소개 목표 : 제어기의 종류, 제어 방식 등을 살펴본다. 주요내용 제어기의 종류 제어방식 : 시퀀스, 피드백, 등.
10장 주변장치 (PIO) Slide 1 (of 28).
7장 : 캐시와 메모리.
3장 MPU 내부구조 Slide 1 (of 28).
임베디드 하드웨어 Lecture #6.
컴퓨터 구조학 정보보호학과.
DSP와 TMS320F28X의 이해
DSP와 TMS320F28x의 이해.
출처: IT CookBook, 컴퓨터 구조와 원리 2.0 제 12장
PowerPC ABI 김종화.
컴퓨터 구조.
Chapter 02 시스템 구조(System Structure)
1 컴퓨터 시스템 소개.
4장. 컴퓨터 시스템의 구성과 기능 다루는 내용 컴퓨터 분해를 통한 본체 살펴보기 컴퓨터 구성요소 컴퓨터의 기능
가상플랫폼을 사용한 임베디드SW 개발 (CoWare CoWare Virtual Platform Designer 사용)
9장. 중앙처리 장치의 조직과 기능 다루는 내용 컴퓨터 본체에서 CPU의 위치 살펴보기 CPU의 성능, 기능, 조직
Chapter 10. Interrupt.
1 마이크로프로세서의 원리 마이크로컨트롤러 AVR ATmega128.
Chapter 7. Pentium Processor
1. Embedded System의 이해.
Computer Architecture
6 중앙처리장치의 조직과 기능 IT CookBook, 컴퓨터 구조와 원리 2.0.
Chapter 06 명령어와 번지지정 방식.
ARM 명령어 집합 Lecture #7.
3주 컴퓨터구조.
8086 프로세서의 구조 및 동작 방식 시스템 프로그래밍 - Lecture #2 신라대학교 컴퓨터공학과 시스템 프로그래밍.
임베디드 소프트웨어 설계.
10장. 중앙처리 장치의 명령어 다루는 내용 어셈블리 프로그램의 이해 인터럽트(interrupt) 명령어 세트 주소 지정 방식.
2007년 1학기 전산학개론 성신여자대학교 컴퓨터정보학부
Computer System Architecture
Programmable Logic Device
Chapter 4 The Von Neumann Model.
컴퓨터 시스템 개관 시스템 프로그래밍 - Lecture #1 신라대학교 컴퓨터공학과 시스템 프로그래밍.
Computer System Architecture
6-1 중앙 처리 장치의 내부 구조 6-2 명령(instruction) 6-3 주소 지정 방식
운영체제 (Operating Systems) (Memory Management Strategies)
UNIT 21 Flash Memory Controller 로봇 SW 교육원 조용수.
Chapter 12 Memory Organization
11장. 마이크로 프로세서 내부 구조.
Machine architecture Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Chapter 2.
9장. 중앙처리 장치의 조직과 기능 다루는 내용 컴퓨터 본체에서 CPU의 위치 살펴보기 CPU의 성능, 기능, 조직
정보 INFRA 구축 RF카드를 이용한 고객관리시스템 구축 에클라트소프트.
Machine architecture Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Chapter 2.
Machine architecture Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Chapter 2.
임베디드 하드웨어 Lecture #6.
Lecture 7 7-Segment LED controller using u-controller
가상 기억장치 (Virtual Memory)
Presentation transcript:

핵심 프로세서 Core-A 활용확신 지원사업 Core-A 프로세서 지원센터

핵심 프로세서 Core-A 활용확산 지원사업 t Core-A Processor Cache & MMU & Debugger Tool Chain & Implementation Core-A Homepage Core-B BUS 3 5

핵심 프로세서 Core-A 활용확산 지원사업 Debugging System SDK Core-A Processor Cache Controller Cache Controller MMU 32bit Processor core 32bit Processor core DSP FPU Memory Controller Memory Controller User Logic Bridge AMBA IPs AMBA IPs Standard Peripherals Standard Peripherals Embedded Complier/OS Embedded Complier/OS JTAG-Based Emulator JTAG-Based Emulator In-Circuit Debugger In-Circuit Debugger External memory bus High-speed bus Extended system bus Peripheral bus Platform-Based Design  Core-A System Processor Core + Fundamental IPs + Debugger + SDK +Verification System + Application Examples Total solution for Embedded System Design

핵심 프로세서 Core-A 활용확산 지원사업 SystemDecription Hardware Components 32- bit Embedded Processor Core (Core-A) On-Chip BUS (Core-B Lite) On-Chip Cache Controller On-Chip MMU On-Chip Debugger Software Components (Cycle-accurate) Instruction Set Simulator Assembler & Linker (ported for Core-A) GCC (ported for Core-A) GDB (ported for Core-A) Verification FPGA-based Core-A Development Platform Fundamental Ips Design Use-cases Programmable Sound Synthesizer JPEG2000 Encoder

핵심 프로세서 Core-A 활용확산 지원사업 Core-A Processor  32-bit RISC Processor  5 Stage Pipeline Structure  Fully Synthesizable Key Features  Programmable Delay  NOP Insertion before execution  Programmable Branch Slot  Powerful Load/Store Operation  LDM / STM  32 Bit Immediate Concatenation  MUI  Extensible Architecture  Application Specific Registers  Coprocessor I/F IF ID EX MEM WB

핵심 프로세서 Core-A 활용확산 지원사업 Core-AMIPS32ARM9 # of Visible Registers # of Total Registers1837 Shifted OperandOXO Pre/Post IndexingOXO Conditional Execution*ΔΔO Multiple Load & Store (LDM, STM) OXO DSP FeatureOOO NOP FieldOXX Programmable Delay SlotOXX

핵심 프로세서 Core-A 활용확산 지원사업 16 GPR (general purpose register)  12 general use  EPARAM (Exception parameter)  EPC (Exception PC)  RA (Return Address) PC (program counter) PS (program status) 2 16 ASR (Application Specific Register) CPR (Coprocessor Register)

핵심 프로세서 Core-A 활용확산 지원사업

The high parts ([31:16]) and the low parts ([15:0]) have the same format  The high parts : the previous status before the exception  The low parts : the current status N (Negative), Z (Zero), C (Carry), V (Overflow)  Execution result of the instruction IE : interrupt enable – 0 for disable M (Mode) : shows the current processor mode  1’b0 : User Mode  1’b1 : Supervisor Mode – protected mode for operating system for handling exception/interrupt. ‘PS’ can be updated with MTPS/MFPS instructions

핵심 프로세서 Core-A 활용확산 지원사업 Sub-routine call  CALL/LCALL/CALLR/CALLZ/  $RA  $PC+4*n  $PC  $PC+X Return from sub-routine call  CALLR Exception Type 0x00Reset 0x04DMMU Page Fault 0x08Undefined Instruction 0x0CSoftware Interrupt 0x10External Interrupt 0x14IMMU Page Fault 0x18Co-Processor Interrupt [general exception handling by the Core-A] EPC  PC PS[31:16]  PS[15:0] PS.IE  0 (Interrupt Disabled) PS.MODE  2’b01 (Supervisor) PC  service_routine_address (not vector address) [reset handling by the Core-A] EPC  UNPREDICTABLE value PS[31:16]  UNPREDICTABLE value PS.IE  0 (Interrupt Disabled) PS.MODE  2’b01 (Supervisor) PC  0x00

핵심 프로세서 Core-A 활용확산 지원사업 Exception Disassembly Code : 0: c b.al 0x1c 74 4: b.al 0x5 1c 8: b.al 0x4 1c c: b.al 0x3 1c 10: b.al 0x : b.al 0x1 1c 18: b.al 0x0 1c c : 1c: 1c6b0002 movi.al ip, 0x2 20: 420e0000 rfi : 24: 10ccffb8 addi sp, sp, : 532c0000 st.w r0, (sp + 0x0) … 68: 572c0000 ld.w r0, (sp + 0x0) 6c: 10cc0048 addi sp, sp, 72 70: 420e0000 rfi : 74: mui 0x : 0c6c0040 movi.al sp, concat(0x0) 7c: ien 80: call.al 0x : nop

핵심 프로세서 Core-A 활용확산 지원사업 Core-A internally uses logical clock (gated clock), not physical clock All pipelines do not proceed if memory response is pending. nIWAIT nDWAIT D Q CLK Negative Latch Clock Buffer Physical Clock Logical Clock (Gated CLK) Core-A gated-clock

핵심 프로세서 Core-A 활용확산 지원사업 nIWAIT nDWAIT D Q CLK Negative Latch Clock Buffer Physical Clock Logical Clock (Gated CLK) Physical clock Gated logical clock

핵심 프로세서 Core-A 활용확산 지원사업 4KB direct-mapped cache  16 bytes line size / 256 sets  Support only write-back / write-allocate policy  Critical word first with wrapping burst  Coprocessor interface  Invalidate All Line  Indexed Line Invalidate  Indexed Line Clean  Indexed Line Store Tag  Indexed Line Store Data  Indexed Line Load Tag  Indexed Line Load Data

핵심 프로세서 Core-A 활용확산 지원사업 2-level hierarchical TLB  2-level hierarchical page table (4MB, 4KB)  Hardware-managed page table walk  Separate MMU for instruction and data memory  16 fully-associative entries for each TLB  Controlled by CP0  Global page support  Lockdown support  Cacheable support  Page execute protection

핵심 프로세서 Core-A 활용확산 지원사업 On-Chip Debugging Logic  Tightly-coupled to Core-A  Emulator Board can be replaced by  ALTERA™ Byte-blaster or XILINX™ Parallel II SW Debugger  GDB (Ported to Core-A)  Collaborated with Core-A’s Binutils & ISS  Eclipse-based GUI Eclipse-based GUI

핵심 프로세서 Core-A 활용확산 지원사업 Core-B Lite  Multiple Masters, Multiple Slaves  Pipelined Operation  Burst Transaction  Single Cycle Bus Master Handover  Non-tristate Implementation  Variable Length of Burst Transfers  Startup Address Supporting Wrapping  Load Address / Sequential Address Core-B Lite Bus Core-B Lite Arbiter Core-B Lite Arbiter Core-B Lite Master #1 Core-B Lite Master #1 Core-B Lite Master #2 Core-B Lite Master #2 Core-B Lite Decoder Core-B Lite Decoder Core-B Lite Slave #1 Core-B Lite Slave #1 Core-B Lite Slave #2 Core-B Lite Slave #2 CMUXCMUX WMUXWMUX RMUXRMUX Address/Control Write Data Read Data/Ready

핵심 프로세서 Core-A 활용확산 지원사업 Debugging System Core-A Processor Cache Controller Cache Controller MMU 32bit Processor core 32bit Processor core DSP FPU Memory Controller Memory Controller User Logic Core-B/APB Bridge Core-B/APB Bridge AMBA IPs AMBA IPs Standard Peripherals Standard Peripherals In-Circuit Debugger In-Circuit Debugger External memory bus Core-B Lite Bus Extended system bus APB Core-A Processor Bridge AHB AHB Wrapper

핵심 프로세서 Core-A 활용확산 지원사업

어셈블러 및 링커  Core-A Instruction 용 바이너리 코드 생성  자료의존성 (Data Dependency) 분석을 통한 자동 NOP 명령어 삽입  ELF 및 Flat 파일 생성  Link Scipt 를 사용해 메모리 맵에 따라 프로그램 코드 및 데이터의 위치를 지정 디스어셈블러, 파일포맷 변화기 및 라이브러리 생성기  디스어셈블러를 통한 실행파일의 디스어셈블 기능 및 파일 포맷 변환  라이브러리 생성기를 이용한 라이브러리 구현 지원 컴파일러  ANSI C 언어 구문 지원  Inline Assembly Syntax 및 매크로 지원  DWARF2 포맷 디버깅 정보 생성  Embedded C library(newlib), uClinux 의 C library(uClibc) 지원  Floating Point 연산 지원  3 단계의 Machine-independent 및 Machine-dependent 최적화 수행

핵심 프로세서 Core-A 활용확산 지원사업 Integer Core ASIC Implementation Core-AMIPS32 4KARM7TDMI-SARM966E-S Process (um)0.18 Frequency (MHz) Power (mW/MHz) Core Size (mm 2 )** Samsung 0.18Magnachip 0.18Dongbu 0.13 Frequency (MHz)288 (T) 254 (T) 300 (T) Eq. Gate Count29.5K29.9K26K Size (mm)0.6x x0.43 Core-A, ARM : w/o cache, MMU ARM, MIPS : w/ debugger

핵심 프로세서 Core-A 활용확산 지원사업

핵심 프로세서 Core-A 활용확산 지원사업 개발연도 IP 내용 2008 임베디드 프로세서 및 온칩 버스 IP 임베디드 프로세서 (Core-A) 용 Tool Chain Core-A 디버거 임베디드 DSP, FPU Core-A 및 Peripheral IP 기반의 공유 플랫폼 2007 Interrupt Controller UART Timer I2C I2S Programmable Parallel Interface LCD Controller Memory Controller USB 2.0 Function Controller CAN Controller

핵심 프로세서 Core-A 활용확산 지원사업 Core-A 정보 -> IP 신청 및 다운로드

핵심 프로세서 Core-A 활용확산 지원사업 홈페이지를 통한 Online 신청 꼭 기억하세요 !!

핵심 프로세서 Core-A 활용확산 지원사업 협약서 작성 및 제출

핵심 프로세서 Core-A 활용확산 지원사업 IP 다운로드 : 신청 아이디와 비밀번호로 조회 꼭 기억하세요 !!

핵심 프로세서 Core-A 활용확산 지원사업 IP 다운로드 수락 여부 결과

핵심 프로세서 Core-A 활용확신 지원사업 설문지를 작성해 주시면 감사하겠습니다.