IT관련 지식들 2010. 3. 11. 10:25
우선 둘간의 차이점을 비교해 보면
-------------------------------------------------------
CISC(Complex Instruction Set Computer)
-복잡한 명령어를 가진 컴퓨터
 >명령어의 갯수가 많고 복잡하다
 >모든 고급언어 문장들에 대해 각각 기계 명령어가 대응되도록 하는것
 >명령어의 사이클이 일정하지 않다.
 >많은 명령어를 집적하여서 트랜지스터의 집적도가 높다.
  >>RISC에 비해 가격이 비싸지고 발열이 많고 전력소모가 많다.
-고급언어 컴파일러의 간단한 번역과정.
-호환성이 절대적으로 필요한 PC 환경에 사용
-386, 486, Pentium 등 PC용 CPU

RISC(Reduced Instruction Set Computer)
-줄어든 명령어를 가진 컴퓨터
 >명령어의 갯수가 적다
 >CISC의 많은 명령어중 주로 쓰이는것만을 추려서 하드웨어로 구현하는 것
 >필요한 명령어만을 구현, 트랜지스터의 집적도가 낮아져서 레지스터의 용량을 늘릴 수 있다.
-명령어의 사이클이 일정하다. (한 사이클에 한개의 명령어)
 >파이프라인으로 구현이 용이
-이것은 하위 컴퓨터의 표준이 될만한 호환 명령어라는 개념이 없고 프로세서의 단계에 따라 최적의 명령어가 정해져 있다.
 >처리 비트 단위가 변하거나 CPU의 구조가 조금만 바뀌어도 하위 프로세서와의 호환성이 떨어지므로 문제가 발생한다. 
-용도에 최적화가 요구되는 환경에 사용
-IBM System/6000, 임베디드(MIPS, ARM계열 등), 매킨토시, 서버, 워크스테이션 등을 위한 특수목적 CPU

-------------------------------------------------------

=== 프로그램을 하는 사람이 가장 쉽게 느낄 수 있는 예제 ===

X=(A+B)*(C+D)

이러한 기능을 수행하는 코드를 각 머신으로 작성한다고 했을때

(CISC)ADD R1,A,B   R1<- M[A]+M[B]ADD R2,C,D   R2<- M[C]+M[D]MUL X,R1,R2  M[X]<- R1 * R2(RISC)LOAD R1,A    R1<-M[A]LOAD R2,B    R2<-M[B]LOAD R3,C    R3<-M[C]LOAD R4,D    R4<-M[D]ADD R1,R1,R2 R1<-R1+R2ADD R3,R3,R4 R3<-R3+R4MUL R1,R1,R3 R1<-R1*R3STORE X,R1   M[X]<-R1
-> RISC의 가장 큰 특징은 LOAD, STORE 명령어라고 본적이 있습니다.
 



 RISC가 나중에 나온 구조이고 RISC가 정착하지 못한 이유에 대한 어떤 분의 해석

RISC의 장점에도 불구하고, RISC 칩은 실제 시장에서 확고한 입지를 마련하기 까지 10년이 넘게 걸렸다이것은 소프트웨어의 부재에 기인한다.

 

 비록 애플사의 파워 매킨토시가 RISC 기반한 컴퓨터이고윈도NT RISC에 호환되긴 하지만윈도3.x, 윈도9x는 기본적으로 CISC 프로세서용으로 설계되었다많은 회사들이 최근 개발된 RISC 기술을 채용하는 것에 꺼려하는 이유도 여기에 있다고 할 수 있다많은 상업적인 이익없이 프로세서 개발자들은 RISC가 가격 경쟁력을 갖을 정도의 많은 수량의 칩을 생산할 수 없다.

 

 다른 중요한 장애 중에 하나는 인텔이다비록 인텔의 CISC 칩들이 점점 다루기 어려워지고 있지만 인텔은 개발에 필요한 많은 리소스를 가지고 있고보다 강력한 프로세서들을 만들고 있다. RISC 칩들이 특정 영역에서 인텔의 칩들을 능가한다 하더라고 그 차이는 바이어들이 새로운 기술로 마음을 돌리게 할 만큼 크지 않다.


 하지만 다른 분들의 자료를 잘 찾아보니 호환성이란 문제가 남아 있었던 듯 합니다.

요즘은 둘을 혼용해서 쓴다고 하니 양쪽다 장점과 단점이 있었고, 둘의 장점을 혼합해서 나은 방향으로 발전한것같습니다.



참고사이트 : 네이버 블로그 ( http://blog.naver.com/maxuper/30015489886 )
posted by 동글동글82
: