• Title/Summary/Keyword: 명령어 시뮬레이션

Search Result 118, Processing Time 0.026 seconds

FPGA Implementation of ARM9 Compatible Microprocessor (ARM9 호환 Microprocessor의 FPGA 구현)

  • Oh Min-Seok;Kim Jae-Woo;Nam Ki-Hoon;Kim Myeong-Hwan;Lee Kwang-youb
    • Proceedings of the IEEK Conference
    • /
    • 2004.06b
    • /
    • pp.427-430
    • /
    • 2004
  • 본 논문에서는 로드 명령어 처리와 곱셈기의 구조를 개선한 ARM9 호환 마이크로프로세서를 설계하였으며, ARM9 마이크로프로세서와 비교하여 특정한 로드 명령어 수행 시 1 클록 사이클을 단축하였고, 곱셈명령어 수행 시 2 클록 사이클 단축하였다. 설계된 ARM9 프로세서는 VHDL로 기술하였으며, 명령어 시뮬레이션 결과 ARM9 마이크로프로세서 시뮬레이터와 실행 결과 값이 동일함을 확인하여 명령어 호환 검증을 하였으며, Xilinx FPGA를 이용하여 66MHz 동작환경에서 실시간 영상 처리 수행을 검증하였다.

  • PDF

The Instruction Flash memory system with the high performance dual buffer system (명령어 플래시 메모리를 위한 고성능 이중 버퍼 시스템 설계)

  • Jung, Bo-Sung;Lee, Jung-Hoon
    • Journal of the Korea Society of Computer and Information
    • /
    • v.16 no.2
    • /
    • pp.1-8
    • /
    • 2011
  • NAND type Flash memory has performing much researches for a hard disk substitution due to its low power consumption, cheap prices and a large storage. Especially, the NAND type flash memory is using general buffer systems of a cache memory for improving overall system performance, but this has shown a tendency to emphasize in terms of data. So, our research is to design a high performance instruction NAND type flash memory structure by using a buffer system. The proposed buffer system in a NAND flash memory consists of two parts, i.e., a fully associative temporal buffer for branch instruction and a fully associative spatial buffer for spatial locality. The spatial buffer with a large fetching size turns out to be effective serial instructions, and the temporal buffer with a small fetching size can achieve effective branch instructions. According to the simulation results, we can reduce average miss ratios by around 77% and the average memory access time can achieve a similar performance compared with the 2-way, victim and fully associative buffer with two or four sizes.

A study on the Development of General-Purpose Multimedia Processor Architecture (범용 멀티미디어 프로세서 구조 개발에 관한 연구)

  • 오명훈;박성모
    • Proceedings of the IEEK Conference
    • /
    • 1998.10a
    • /
    • pp.1149-1152
    • /
    • 1998
  • 멀티미디어 데이터를 아날로그 방식보다는 디지털 방식으로 처리하게 되면 여러 면에서 이득을 볼 수 있다. 멀티미디어 데이터를 디지털 방식으로 처리하는 방법 중 범용프로세서에서 멀티미디어 명령어에 의해 처리하게 되면 flexibility를 증가시키며 효율적으로 프로그램할 수 있다. 본 논문에서는 범용 프로세서 안에서 멀티미디어 데이터를 효율적으로 처리할 수 있는 명령어 집합 구조와 이를 수행할 수 있는 프로세서의 구조를 제안하고 이를 HDL(Hardware Description Language)로 동작레벨에서 기술하고 시뮬레이션 하였다. 제안된 멀티미디어 명령어는 특성에 따라 8개의 그룹에 총 55개의 명령어로 구성되며 64비트 데이터 안에서 각각 8비트의 8바이트, 16비트의 4하프워드, 32비트의 2워드의 부워드(subword) 데이터들을 병렬 처리한다. 모델링된 프로세서는 오픈아키텍쳐(Open Architecture)인 SPARC V.9 의 정수연산장치(Integer Unit)에 기반을 두었으며 하바드 구조를 지닌 5단 파이프라인 RISC 형태이다.

  • PDF

Simulation on a test vector Implementation of a pipeline processor using a HDL (HDL을 이용한 파이프라인 프로세서의 테스트 벡터 구현에 의한 시뮬레이션)

  • 박두열
    • Journal of the Korea Society of Computer and Information
    • /
    • v.5 no.3
    • /
    • pp.16-28
    • /
    • 2000
  • In this paper, we implemented by describing a pipeline processor using a HDL in functional level, simulated and verified it's operation. When simulating a implemented processor. We first specify assembly instruction that is Performed in the processor. entered by programming using the instruction sets at the experimental framework. Thus, the procedure that is presented in this paper can easily identify and verify the purpose for implementation and operation of a system by using test vector. Also, it was possible that exactly simulate a system. The method was comfortable that document a system operation to implement.

  • PDF

Implementation of an Instruction Buffer to process Variable-Length Instructions (가변 길이 명령어 처리를 위한 명령어 버퍼 구현)

  • 박주현;김영민
    • Journal of the Korean Institute of Telematics and Electronics C
    • /
    • v.35C no.12
    • /
    • pp.66-76
    • /
    • 1998
  • In this paper, we implement a buffer capable of handling short loops references to statistically lower the miss rate of variable-length instructions stored in the instruction buffer. MAU(Mark Appending Unit) takes the instructions as they are fetched from external memory, performs some initial decode operations and stores the results of the decode in the buffer for reducing multiple decodes when instructions are executed repeatedly such as in a loop. It includes a decision block of whether hit or not for effectively processing branch instructions Each module of the proposed architecture of processing variable-length instruction is described in VHDL structurally and behaviorally and whether it is working well or not is checked on V-System simulator of Model Technology Inc. We synthesized and simulated the architecture using an ASIC Synthesizer tool with 0.6$\mu\textrm{m}$ 5-Volt CMOS COMPASS library. Operation speed is up to 140MHz. The architecture includes about 17,000 gates.

  • PDF

An Embedded Software Debugger Using an Instruction Set Simulator (명령어 집합 시뮬레이터를 이용한 임베디드 소프트웨어 디버거)

  • Jung, Hun;Son, Sung-Hoon;Shin, Dong-Ha
    • Journal of the Korea Society for Simulation
    • /
    • v.15 no.4
    • /
    • pp.51-58
    • /
    • 2006
  • Debugging embedded softwares is very different from debugging general softwares. For examples, debugging embedded software requires more information, such as information on power consumption, information on the distribution of executed instructions, information on the distribution of used registers, and information on the amount of clocks consumed during the execution of a program, that is not needed in debugging general softwares. In this paper, we propose more effective method fer debugging embedded softwares using an instruction set simulator for the microprocessor that is executing embedded softwares. In this research, we develop a debugger based on an instruction set simulator for a domestic embedded microprocessor called SE1608 and we shows an effective debugging method using a MiBench program which is widely used to benchmark embedded softwares. The debugging method proposed in this paper is relatively easy to implement and shows many advantages compared with existing debugging methods.

  • PDF

Performance Analyses of Instruction Fetch Models Considering Cache Miss and Branch Misprediction (캐쉬 미스와 분기예측 실패를 고려한 명령어 페치 모델의 성능분석)

  • Kim, Seon-Mo;Jeong, Jin-Ha;Choe, Sang-Bang
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.28 no.12
    • /
    • pp.685-697
    • /
    • 2001
  • Cache memories are small fast memories used to temporarily hold the contents of main memory that are likely to be referenced by processors so as to reduce instruction and data access time. In this paper, we represent analytical models of instruction fetch process for four types of instruction cache structures that can be used for superscalar processors. In the models, we define various kinds of architectural parameters and take cache miss and branch misprediction into consideration. To prove the correctness of the proposed models, we performed extensive simulations and compared the results with the analytical models. Simulation results showed that the proposed model can estimate the instruction fetch rate accurately within 10% error in most cases. Both analytical model and simulation show that the increase of cache misses reduces the instruction fetch rate more severely than that of branch misprediction does. However, the analytical model can explain the causes of performance degradation which cannot be uncovered by the simulation method only. The model is also able to provide exact relationship between cache miss and branch misprediction for instruction fetch analysis.

  • PDF

A Design of Interger division instruction of Low Power ARM7 TDMI Microprocessor (저전력 ARM7 TDMI의 정수 나눗셈 명령어 설계)

  • 오민석;김재우;김영훈;남기훈;이광엽
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.41 no.4
    • /
    • pp.31-39
    • /
    • 2004
  • The ARM7 TDMI microprocessor employ a software routine iteration method in order to handle integer division operation, but this method has long execution time and many execution instruction. In this paper, we proposed ARM7 TDMI microprocessor with integer division instruction. To make this, we additionally defined UDIV instruction for unsigned integer division operation and SDIV instruction for signed integer division operation, and proposed ARM7 TDMI microprocessor data Path to apply division algorithm. Applied division algorithm is nonrestoring division algorithm and additive hardware is reduced using existent ARM data path. To verify the proposed method, we designed proposed method on RTL level using HDL, and conducted logic simulation. we estimated the number of execution cycles and the number of execution instructions as compared proposed method with a software routine iteration method, and compared with other published integer divider from the number of execution cycles and hardware size.

Instruction-level Power Model for Asynchronous Processor, A8051 (비동기식 프로세서 A8051의 명령어 레벨 소비 전력 모델)

  • Lee, Je-Hoon
    • The Journal of the Korea Contents Association
    • /
    • v.12 no.7
    • /
    • pp.11-20
    • /
    • 2012
  • This paper presents new instruction-level power model for an asynchronous processor, A8051. Even though the proposed model estimates power consumption as instruction level, this model reflects the behavioral features of asynchronous pipeline during the program is executed. Thus, it can effectively enhance the accuracy of power model for an asynchronous embedded processor without significant complexity of power model as well as the increase of simulation time. The proposed power model is based on the implementation of A8051 to reflect the characteristics of power consumption in A8051. The simulation results of the proposed model is compared with that of gate-level synthesized A8051. The proposed power model shows the accuracy of 94% and the simulation time for estimation the power consumption was reduced to 1,600 times.

Development of Simulation App for Understanding Test-and-Set Algorithms that Multi Learner Can Use Simultaneously

  • Lee, Kyong-ho
    • Journal of the Korea Society of Computer and Information
    • /
    • v.25 no.9
    • /
    • pp.193-201
    • /
    • 2020
  • In this study, we developed a simulation app that performs the Test-and-Set algorithm. The test-and-set algorithm is a highly difficult algorithm, so this simulation app was created for learners who have difficulty understanding it. Learners who want to understand the Test-and-Set algorithm gather to form a team, and use this simulation app to discuss and practice, and these teams can practice at the same time. The test-and-set, which is assumed to be a machine language, is not interrupted by using a queue, and it can be seen that the configured simulation app performs well in all three conditions of 'mutual exclusion', 'progress', and 'bounded waiting' that must be solved in the critical area problem.