#!if 넘어옴1 != null
''''''{{{#!if 넘어옴2 == null
{{{#!if 넘어옴1[넘어옴1.length - 1] >= 0xAC00 && 넘어옴1[넘어옴1.length - 1] <= 0xD7A3
{{{#!if ((넘어옴1[넘어옴1.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴1[넘어옴1.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴1[넘어옴1.length - 1] < 0xAC00 || 넘어옴1[넘어옴1.length - 1] > 0xD7A3
은(는)}}}}}}{{{#!if 넘어옴2 != null
, ''''''{{{#!if 넘어옴3 == null
{{{#!if 넘어옴2[넘어옴2.length - 1] >= 0xAC00 && 넘어옴2[넘어옴2.length - 1] <= 0xD7A3
{{{#!if ((넘어옴2[넘어옴2.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴2[넘어옴2.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴2[넘어옴2.length - 1] < 0xAC00 || 넘어옴2[넘어옴2.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴3 != null
, ''''''{{{#!if 넘어옴4 == null
{{{#!if 넘어옴3[넘어옴3.length - 1] >= 0xAC00 && 넘어옴3[넘어옴3.length - 1] <= 0xD7A3
{{{#!if ((넘어옴3[넘어옴3.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴3[넘어옴3.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴3[넘어옴3.length - 1] < 0xAC00 || 넘어옴3[넘어옴3.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴4 != null
, ''''''{{{#!if 넘어옴5 == null
{{{#!if 넘어옴4[넘어옴4.length - 1] >= 0xAC00 && 넘어옴4[넘어옴4.length - 1] <= 0xD7A3
{{{#!if ((넘어옴4[넘어옴4.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴4[넘어옴4.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴4[넘어옴4.length - 1] < 0xAC00 || 넘어옴4[넘어옴4.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴5 != null
, ''''''{{{#!if 넘어옴6 == null
{{{#!if 넘어옴5[넘어옴5.length - 1] >= 0xAC00 && 넘어옴5[넘어옴5.length - 1] <= 0xD7A3
{{{#!if ((넘어옴5[넘어옴5.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴5[넘어옴5.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴5[넘어옴5.length - 1] < 0xAC00 || 넘어옴5[넘어옴5.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴6 != null
, ''''''{{{#!if 넘어옴7 == null
{{{#!if 넘어옴6[넘어옴6.length - 1] >= 0xAC00 && 넘어옴6[넘어옴6.length - 1] <= 0xD7A3
{{{#!if ((넘어옴6[넘어옴6.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴6[넘어옴6.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴6[넘어옴6.length - 1] < 0xAC00 || 넘어옴6[넘어옴6.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴7 != null
, ''''''{{{#!if 넘어옴8 == null
{{{#!if 넘어옴7[넘어옴7.length - 1] >= 0xAC00 && 넘어옴7[넘어옴7.length - 1] <= 0xD7A3
{{{#!if ((넘어옴7[넘어옴7.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴7[넘어옴7.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴7[넘어옴7.length - 1] < 0xAC00 || 넘어옴7[넘어옴7.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴8 != null
, ''''''{{{#!if 넘어옴9 == null
{{{#!if 넘어옴8[넘어옴8.length - 1] >= 0xAC00 && 넘어옴8[넘어옴8.length - 1] <= 0xD7A3
{{{#!if ((넘어옴8[넘어옴8.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴8[넘어옴8.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴8[넘어옴8.length - 1] < 0xAC00 || 넘어옴8[넘어옴8.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴9 != null
, ''''''{{{#!if 넘어옴10 == null
{{{#!if 넘어옴9[넘어옴9.length - 1] >= 0xAC00 && 넘어옴9[넘어옴9.length - 1] <= 0xD7A3
{{{#!if ((넘어옴9[넘어옴9.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴9[넘어옴9.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴9[넘어옴9.length - 1] < 0xAC00 || 넘어옴9[넘어옴9.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴10 != null
, ''''''{{{#!if 넘어옴10[넘어옴10.length - 1] >= 0xAC00 && 넘어옴10[넘어옴10.length - 1] <= 0xD7A3
{{{#!if ((넘어옴10[넘어옴10.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴10[넘어옴10.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴10[넘어옴10.length - 1] < 0xAC00 || 넘어옴10[넘어옴10.length - 1] > 0xD7A3
은(는)}}}}}} 여기로 연결됩니다. #!if 설명 == null && 리스트 == null
{{{#!if 설명1 == null
다른 뜻에 대한 내용은 아래 문서를}}}{{{#!if 설명1 != null
{{{#!html 대한민국의 바이오 기업}}}에 대한 내용은 [[넥스젠바이오]] 문서{{{#!if (문단1 == null) == (앵커1 == null)
를}}}{{{#!if 문단1 != null & 앵커1 == null
의 [[넥스젠바이오#s-|]]번 문단을}}}{{{#!if 문단1 == null & 앵커1 != null
의 [[넥스젠바이오#|]] 부분을}}}}}}{{{#!if 설명2 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단2 == null) == (앵커2 == null)
를}}}{{{#!if 문단2 != null & 앵커2 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단2 == null & 앵커2 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명3 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단3 == null) == (앵커3 == null)
를}}}{{{#!if 문단3 != null & 앵커3 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단3 == null & 앵커3 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명4 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단4 == null) == (앵커4 == null)
를}}}{{{#!if 문단4 != null & 앵커4 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단4 == null & 앵커4 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명5 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단5 == null) == (앵커5 == null)
를}}}{{{#!if 문단5 != null & 앵커5 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단5 == null & 앵커5 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명6 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단6 == null) == (앵커6 == null)
를}}}{{{#!if 문단6 != null & 앵커6 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단6 == null & 앵커6 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명7 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단7 == null) == (앵커7 == null)
를}}}{{{#!if 문단7 != null & 앵커7 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단7 == null & 앵커7 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명8 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단8 == null) == (앵커8 == null)
를}}}{{{#!if 문단8 != null & 앵커8 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단8 == null & 앵커8 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명9 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단9 == null) == (앵커9 == null)
를}}}{{{#!if 문단9 != null & 앵커9 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단9 == null & 앵커9 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명10 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단10 == null) == (앵커10 == null)
를}}}{{{#!if 문단10 != null & 앵커10 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단10 == null & 앵커10 != null
의 [[#|]] 부분을}}}}}}#!if 설명 == null
{{{#!if 리스트 != null
다른 뜻에 대한 내용은 아래 문서를}}} 참고하십시오.#!if 리스트 != null
{{{#!if 문서명1 != null
* {{{#!if 설명1 != null
대한민국의 바이오 기업: }}}[[넥스젠바이오]] {{{#!if 문단1 != null & 앵커1 == null
문서의 [[넥스젠바이오#s-|]]번 문단}}}{{{#!if 문단1 == null & 앵커1 != null
문서의 [[넥스젠바이오#|]] 부분}}}}}}{{{#!if 문서명2 != null
* {{{#!if 설명2 != null
: }}}[[]] {{{#!if 문단2 != null & 앵커2 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단2 == null & 앵커2 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명3 != null
* {{{#!if 설명3 != null
: }}}[[]] {{{#!if 문단3 != null & 앵커3 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단3 == null & 앵커3 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명4 != null
* {{{#!if 설명4 != null
: }}}[[]] {{{#!if 문단4 != null & 앵커4 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단4 == null & 앵커4 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명5 != null
* {{{#!if 설명5 != null
: }}}[[]] {{{#!if 문단5 != null & 앵커5 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단5 == null & 앵커5 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명6 != null
* {{{#!if 설명6 != null
: }}}[[]] {{{#!if 문단6 != null & 앵커6 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단6 == null & 앵커6 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명7 != null
* {{{#!if 설명7 != null
: }}}[[]] {{{#!if 문단7 != null & 앵커7 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단7 == null & 앵커7 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명8 != null
* {{{#!if 설명8 != null
: }}}[[]] {{{#!if 문단8 != null & 앵커8 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단8 == null & 앵커8 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명9 != null
* {{{#!if 설명9 != null
: }}}[[]] {{{#!if 문단9 != null & 앵커9 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단9 == null & 앵커9 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명10 != null
* {{{#!if 설명10 != null
: }}}[[]] {{{#!if 문단10 != null & 앵커10 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단10 == null & 앵커10 != null
문서의 [[#|]] 부분}}}}}}| <colbgcolor=#1a5276><colcolor=#ffffff> NexGen | |
| NexGen | |
| 회사명 | NexGen Inc. |
| 국가 | |
| 창립일 | 1986년 |
| 폐업일 | 1996년 1월 (AMD에 인수) |
| 창업자 | A. 탐피 토머스 |
| 사업 | 팹리스 반도체 설계 |
| 본사 | 미국 캘리포니아주 밀피타스 |
1. 개요
1986년부터 1996년까지 존재했던 미국의 팹리스 CPU 설계 회사이다. 인텔과 AMD의 그늘 속에서 x86 명령어를 내부적으로 RISC 명령으로 분해해 실행하는 방식을 최초로 상용화한 회사로, 이 설계 사상은 이후 인텔 펜티엄 프로와 AMD K6를 거쳐 현대 x86 프로세서 전체의 기본 원리가 되었다.AMD에 인수된 뒤 NexGen의 차세대 설계 Nx686은 AMD K6가 되었고, K6의 계보는 K7(애슬론)을 거쳐 지금의 Zen까지 이어진다.
2. 역사
1986년 캘리포니아 밀피타스에서 설립되었다.2.1. Nx586
1994년 3월 첫 제품인 Nx586을 발표하며 프로세서 시장에 진출했다.기술적으로 Nx586은 두 가지 면에서 최초였다.
- x86 명령어를 내부 RISC 명령으로 번역해 실행하는 방식을 상용 x86 프로세서 최초로 구현했다.
NexGen은 이 내부 명령어를 "RISC86"이라 불렀다. 복잡한 x86 CISC 명령어를 단순한 고정 길이 연산으로 쪼개 파이프라인에 넣는 이 접근은 1995년 인텔이 펜티엄 프로(P6 아키텍처)에서 동일한 원리를 채택하면서 업계 표준이 되었고, 이후 모든 고성능 x86 프로세서가 따르고 있다. - x86 프로세서 최초로 비순차적 실행(out-of-order execution)을 구현했다.
이 역시 펜티엄 프로보다 약 1년 앞선 것으로, 최대 14개의 마이크로오퍼레이션을 재정렬할 수 있었다.
트랜지스터 수는 약 350만 개로, 3-way 슈퍼스칼라 구조에 22개의 물리 레지스터로 레지스터 리네이밍을 수행했으며, 2단계 적응형 분기 예측기를 갖추고 있었다. 16KB+16KB 분리형 L1 캐시와 최대 1MB 외장 L2 캐시를 지원했다.
정수 성능 자체는 펜티엄을 동클럭에서 확실히 앞질렀으나, 치명적인 약점이 두 가지 있었다.
- FPU가 없었다.
NexGen은 "PC 응용의 98%가 정수 연산"이라며 부동소수점 유닛을 별도 칩(Nx587, 128달러)으로 분리했다. 이 판단은 Cyrix가 같은 시기 같은 이유로 겪은 것과 똑같은 결과를 낳았다. 1996년 3D 게임 시대가 열리면서 FPU 없는 CPU는 경쟁력을 잃었다. 뒤늦게 Nx587을 멀티칩 모듈(MCM)로 합친 PF100/PF110 모델을 내놓았지만 이미 늦었다. - 독자 버스 "NexBus"를 사용했다.
멀티프로세서를 염두에 두고 설계한 64비트 독자 버스 프로토콜이어서 인텔의 소켓 5/소켓 7과 호환되지 않았다. NexGen 전용 메인보드와 칩셋(NxVL, NxPCI)이 필요했고, 463핀 독자 PGA 패키지를 썼다. 대만 제조사 7곳과 보드 생산 계약을 맺었지만 공급이 원활하지 않았다. 기존 펜티엄 보드에 꽂기만 하면 되는 경쟁자들과 달리 NexGen은 보드 생태계까지 혼자 만들어야 했고, 소규모 팹리스가 감당할 수 있는 범위가 아니었다.
2.2. Nx686과 AMD 인수
1995년 10월 10일, NexGen은 마이크로프로세서 포럼에서 차세대 설계 Nx686을 발표했다.IBM 0.35µm 공정 기반으로 약 600만 트랜지스터를 탑재했으며, 목표 클럭 180MHz의 4-way 슈퍼스칼라 설계로, Nx586의 약점을 전부 해결한 물건이었다. FPU가 통합되고, 실행 유닛이 7개(정수 2, 부동소수점 1, 멀티미디어 1, 로드 1, 스토어 1, 분기 1)로 늘었으며, 디코더가 2개로 확장되고 물리 레지스터가 48개로 커졌다.
그러나 Nx686이 독자 제품으로 시장에 나오는 일은 없었다. 발표 불과 2주 뒤인 10월 24일, AMD가 NexGen 인수를 발표했기 때문이다. AMD의 자체 펜티엄 대항마였던 K5가 성능과 출하 모두에서 기대에 못 미치던 상황이었고, NexGen은 기술은 있지만 보드 생태계를 만들 역량이 없던 상황이었다.
1996년 1월 인수가 완료되었다. 전액 주식 교환(NexGen 1주당 AMD 0.8주)으로, 발표 시점 AMD 주가 기준 약 8.6억 달러였으나 인수 완료 시점까지 AMD 주가가 하락해 실제 가치는 약 6.2억 달러로 줄었다. 당시 NexGen 직원 165명은 AMD 자회사로 편입되었다.
AMD는 자체 차세대 설계를 중단하고 Nx686을 K6로 재설계했다. 가장 중요한 변경은 NexBus를 버리고 소켓 7 호환 버스로 바꾼 것이었다. 이로써 K6는 기존 펜티엄 메인보드에 꽂을 수 있게 되었고, NexGen이 독자적으로는 끝내 넘지 못한 보드 생태계 문제가 해결되었다. 다만 Nx686의 전용 L2 캐시 버스는 이 과정에서 제거되어 메모리와 L2가 같은 64비트 버스를 공유하게 되었고, 이는 K6의 대역폭 병목으로 남았다. L1 캐시는 32KB+32KB로 두 배 확대되었다. K6는 1997년 4월 출시되어 AMD를 인텔의 진정한 경쟁자로 올려놓았다.
3. 제품 목록
3.1. Nx586
3.2. Nx587
4. 여담
- 초기 Nx586의 일부 모델은 CPUID 명령을 지원하지 않고 CPU 감지를 위해 사용되던 특정 명령어 동작이 386과 동일해, 486 이상을 요구하는 소프트웨어가 설치를 거부하는 문제가 있었다. NexGen은 별도의 감지 루틴을 안내해야 했다. (DIV 명령의 ZF 플래그 결과 차이를 이용)