ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • PSP Hardware Specifications
    Embedded/Kernel Programing 2010. 3. 4. 13:39

    아이폰이 나오기 전까지, 음악, 동영상, 게임등을 고루 만족시켜주었던 PSP. 현재 공부하면서도, 아이폰보다는 PSP가 더 많이 보인다. 구글링을 통해서, 우연히 보게 된 PSP 스펙. 아는만큼 간략하게 풀이해서 적어보자.
    ===== CPU =====
      * Allegrex CPU ( Allegrex 라는 CPU를 사용한다)
        * MIPS r4000 32-bit core 1-333mhz
        * 16kib I-Cache & D-Cache(프로세서 내부에, 캐쉬안에 보면 명령어 캐쉬, 데이터 캐쉬가 있다.이를 I캐쉬,D캐쉬라고 부른다.크기는 16키로바이트)
          * 64-byte line length
          * 2-way set associative, LRU
        * No TLB ( TLB, Translation Lookaside Buffer 는  프로세서 내에서 MMU의 변환 테이블을 관리학 위해서 사용하는 캐시와 유사한 메모리, 곧 버퍼이다. 여기서 다시, MMU란, Memory Management Unit 로 프로세서에서 사용하는 가상주소를 물리적으로 할당된 주소로 변환하는 어드레스 변환 기능과 메모리 보호 기능을 가진 유닛이다. 결국 가상주소에서 물리주소를 추출하는 유닛이라는 뜻이다. 하지만 PSP 에는 No TLB 이므로, 아마도 물리주소가 직접 사용되어 진다는 뜻이 아닐까.)
        * 7-stage pipeline (프로세서가 7단계의 파이프 라인으로 동작한다는 뜻)
        * 32 32-bit registers (일반적으로 ARM 레지스터에서 많이 쓰이는, 32개의 32 bit 레지스터를 갖는다.)
        * FPU (COP1)
          * 32-bit single precision
          * 32 32-bit registers
          * [[http://en.wikipedia.org/wiki/IEEE_754|IEEE 754]] compliant
          * Sqrt (28 cycles), div(28 cycles), most others 1 cycle
        * VFPU (COP2)
          * Vector FPU "Macromode only"(예외상황별 등록되어 있는 벡터 테이블에서,  FPU모드 설명이 되어있는듯하다.)
          * Designed for vector and matrix ops
          * 128 32-bit registers(여기에 32비트 레지스터가 128개나 들어있다는 소린가?)
            * Reconfigurable as scalar, vector or matrix
            * IEEE 754 Single precision float
          * Can also handle 32-bit int, 16-bit int, 8-bit int, half float(정수형 32비트,16비트, 8비트,하프 소수점 연산이 가능하다)
          * vmmul.z vd, vs, vt - 4x4 matrix/vector multiply, 22 cycles

      * Media Block CPU
        * MIPS r4000-based core
        * 2MB Embedded DRAM ( DRAM, Dynamic RAM 이라 SRAM에 비해 동작 속도가 느리고 전원이 공급되는 동안에도 일정 시간마다 Refresh를 해주어야만 안정되게 데이터 저장을 유지할수 있는 RAM이다. 그럼 SRAM 이란, Static RAM, 정적인 RAM 이란 뜻으로, 고속으로 동작할수 있고, 전원이 공급되는 동안에는 안전하게 데이터를 저장할수 있다. 그래서 SRAM은 가격이 고가이며, DRAM은 저가이다.하지만 1개의 트랜지스터만 추가하면 한 비트를 저장할 수 있기 때문에 반도체 효율 면에서는 SRAM보다 유리하다.그래서 PSP에는 2메가 바이트 크기의 임베디드용 DRAM을 사용한다.)
        * VME - Virtual Mobile Engine
          * Reconfigurable processor to decode audio & video
          * ATRAC3plus & MP3 for music
            * ATRAC3plus & ADPCM for games but not MP3 due to licensing issues
        * AVC H.264 engine(H.264코덱 엔진을 사용)
          * MPEG-4 Hardware accelerator(코덱 엑셀레이터)
          * Up to 720x480x30fps(가로 720픽셀, 세로 480픽셀, 30프레임을 사용한다고 한다.)
            * Libraries support 480x272x29.97fps

    ===== Bus =====
      * Main bus shared by CPU and Graphics Engine(CPU하고 그래픽엔진하고 메인버스를 같이 사용한다.버스는 프로세서 내에, 데이터들이 이동하는 통로)
      * CPU only has level-1 cache, recomend minimizing memory usage(CPU는 레벨 1캐쉬만 가지고 있는데, 레벨 1캐쉬는 CPU 내부에 들어있는 캐쉬로 이해하면 된다.메모리 사용을 최소화 하는 목적이다.)
      * Cache miss  ~70 cycles
      * VRAM read  ~44 cycles
        * contention with GE
      * Scratchpad read ~38 cycles

    ===== Graphics =====
      * Graphics Engine (GE)
        * 2MB Embedded DRAM(DRAM은 비휘발성 메모리인데, 2MB용량을 가지고 있다는 뜻)
        * Supports Lighting, skinning (8 weights), morphing, subdivision, pixel operations
        * Operates at bus speed (default 111mhz)(버스스피드는 111메가 헤르쯔)
        * 3.5GB/s Bus bandwidth
        * 444 Mpixels/sec fill rate
        * 23 Mploys/sec T&L

    ===== Storage =====
       * UMD
         * [[http://www.ecma-international.org/publications/standards/Ecma-365.htm|UMD 1.8 GiB DISC]]

    ===== Ports =====
       * Serial-Port (RS-232)
         * [[http://mc.pp.se/psp/phones.xhtml]]

       * USB-Port

Designed by Tistory.