एनईसी V20: Difference between revisions

From Vigyanwiki
Line 78: Line 78:
<code>ADD4S</code>, <code>SUB4S</code>, और <code>CMP4S</code> निर्देश मेमोरी में संग्रहीत विशाल पैक्ड बाइनरी-कोडेड दशमलव संख्याओं को जोड़ने, घटाने और तुलना करने में सक्षम थे। निर्देश <code>ROL4</code>और <code>ROR4</code>चार-बिट निबल्स को घुमाते हैं। एक अन्य परिवार में <code>TEST1</code>, <code>SET1</code>, <code>CLR1</code>, और <code>NOT1</code> निर्देश शामिल हैं, जो अपने ऑपरेंड के एकल बिट्स का परीक्षण, सेट, स्पष्ट और उलटा करते हैं, लेकिन बाद के i80386 समकक्ष <code>[[BT (x86 instruction)|BT]]</code>, <code>[[BTS (x86 instruction)|BTS]]</code>, <code>[[BTR (x86 instruction)|BTR]]</code> और <code>[[BTC (x86 instruction)|BTC]]</code>की तुलना में बहुत कम कुशल हैं; न ही उनकी एनकोडिंग संगत है। एकपक्षीय लंबाई (<code>EXT</code>, <code>INS</code>) के बिट फ़ील्ड निकालने और डालने के लिए दो निर्देश थे। और अंत में, दो अतिरिक्त दोहराव उपसर्ग, <code>[[REP (x86 instruction)|REPE]] और [[REP (x86 instruction)|REPNE]]</code>थे, जिन्होंने बाइट्स या शब्दों की एक स्ट्रिंग (निर्देश<code>[[SCAS (x86 instruction)|SCAS]]</code>और<code>[[CMPS (x86 instruction)|CMPS]]</code>के साथ) को स्कैन करने के लिए मूल आरईपीई और आरईपीएनई निर्देशों में संशोधन किया, जबकि कम या ज्यादा की स्थिति सही थी।<ref name="nec-um" />
<code>ADD4S</code>, <code>SUB4S</code>, और <code>CMP4S</code> निर्देश मेमोरी में संग्रहीत विशाल पैक्ड बाइनरी-कोडेड दशमलव संख्याओं को जोड़ने, घटाने और तुलना करने में सक्षम थे। निर्देश <code>ROL4</code>और <code>ROR4</code>चार-बिट निबल्स को घुमाते हैं। एक अन्य परिवार में <code>TEST1</code>, <code>SET1</code>, <code>CLR1</code>, और <code>NOT1</code> निर्देश शामिल हैं, जो अपने ऑपरेंड के एकल बिट्स का परीक्षण, सेट, स्पष्ट और उलटा करते हैं, लेकिन बाद के i80386 समकक्ष <code>[[BT (x86 instruction)|BT]]</code>, <code>[[BTS (x86 instruction)|BTS]]</code>, <code>[[BTR (x86 instruction)|BTR]]</code> और <code>[[BTC (x86 instruction)|BTC]]</code>की तुलना में बहुत कम कुशल हैं; न ही उनकी एनकोडिंग संगत है। एकपक्षीय लंबाई (<code>EXT</code>, <code>INS</code>) के बिट फ़ील्ड निकालने और डालने के लिए दो निर्देश थे। और अंत में, दो अतिरिक्त दोहराव उपसर्ग, <code>[[REP (x86 instruction)|REPE]] और [[REP (x86 instruction)|REPNE]]</code>थे, जिन्होंने बाइट्स या शब्दों की एक स्ट्रिंग (निर्देश<code>[[SCAS (x86 instruction)|SCAS]]</code>और<code>[[CMPS (x86 instruction)|CMPS]]</code>के साथ) को स्कैन करने के लिए मूल आरईपीई और आरईपीएनई निर्देशों में संशोधन किया, जबकि कम या ज्यादा की स्थिति सही थी।<ref name="nec-um" />


V20 ने एक मोड की पेशकश की जो इंटेल 8080 सीपीयू का अनुकरण करता था। 8080 अनुकरण प्रारंभ करने के लिए एक<code>BRKEM</code>अनुदेश जारी किया जाता है। निर्देश का ऑपरेंड एक इंटरप्ट संख्या निर्दिष्ट करता है जिसके वेक्टर में सेगमेंट:ऑफसेट होता है जहां अनुकरण शुरू होना है। समाप्त करने के लिए, 8080 कोड में एक<code>RETEM</code>निर्देश जारी किया जाता है। एक सुविधा जिसे अक्सर नियोजित नहीं किया जाता है वह है<code>CALLN</code>(कॉल नेटिव) जो 8086-प्रकार की इंटरप्ट कॉल जारी करती है जो x86 कोड (जो IRET का उपयोग करके वापस आती है) को 8080 कोड के साथ मिलाने में सक्षम बनाती है।


V20 ने एक ऐसे मोड की पेशकश की जिसने [[Intel 8080]] CPU का अनुकरण किया। ए <code>BRKEM</code> 8080 एमुलेशन शुरू करने का निर्देश जारी किया है। निर्देश का संचालन एक रुकावट संख्या निर्दिष्ट करता है जिसके वेक्टर में खंड होता है: ऑफ़सेट जहां अनुकरण शुरू होना है। समाप्त करने के लिए, ए <code>RETEM</code> निर्देश 8080 कोड में जारी किया गया है। एक विशेषता जो अक्सर नियोजित नहीं होती है वह है <code>CALLN</code> (कॉल नेटिव) जो 8086-टाइप इंटरप्ट कॉल जारी करता है जो x86 कोड को सक्षम करता है (जो एक <code>IRET</code>) 8080 कोड के साथ मिलाया जाना है।
एक अन्य मोड ने प्रोसेसर को <code>HALT</code> निर्देश के माध्यम से बिजली-बचत स्थिति में डाल दिया था।<ref name="chipdb"/><ref name="tpc-v20"/>
 
एक अन्य मोड प्रोसेसर को पावर सेविंग स्टेट में a के माध्यम से रखता है <code>HALT</code> निर्देश।<ref name="chipdb"/><ref name="tpc-v20"/>
 
 
== मुकदमे ==
== मुकदमे ==
1982 में इंटेल ने NEC के μPD8086 और μPD8088 पर मुकदमा दायर किया। यह मुकदमा अदालत के बाहर सुलझाया गया था, जिसमें एनईसी इंटेल से डिजाइनों को लाइसेंस देने के लिए सहमत हो गया था।<ref name="zdnet-jun1998"/>
1982 में इंटेल ने NEC के μPD8086 और μPD8088 पर मुकदमा दायर किया। यह मुकदमा अदालत के बाहर सुलझाया गया था, जिसमें एनईसी इंटेल से डिजाइनों को लाइसेंस देने के लिए सहमत हो गया था।<ref name="zdnet-jun1998"/>

Revision as of 09:33, 3 July 2023

NEC V20 (µPD70108)
KL NEC V20.jpg
8 MHz V20 in plastic DIP package
General information
LaunchedMarch 1984; 40 years ago (1984-03)[1]
Common manufacturer(s)
Performance
Data width16 bits
Physical specifications
Transistors
  • 63000
Cores
  • 1
Co-processor
  • Intel 8087
  • NEC μPD72091
History
SuccessorNEC V60

एनईसी V20 एक माइक्रोप्रोसेसर है जिसे एनईसी द्वारा डिजाइन और निर्मित किया गया था। यह इंटेल 8088 के साथ पिन अनुकूल और ऑब्जेक्ट कोड दोनों अनुकूल है, कुछ एक्सटेंशन के साथ इंटेल 80188 के समान एक निर्देश सेट आर्किटेक्चर (आईएसए) के साथ।[2] वी20 को मार्च 1984 में प्रस्तुत किया गया था।[1][2]

सुविधाएँ

V20 के पासे में 63,000 ट्रांजिस्टर शामिल थे; 8088 सीपीयू के 29,000 से दोगुने से भी अधिक।[1] चिप को 8088 द्वारा प्रयुक्त 33% ड्यूटी चक्र की तुलना में 50% के क्लॉक ड्यूटी चक्र के लिए डिज़ाइन किया गया था।[3] V20 में दो, 16-बिट विस्तृत आंतरिक डेटाबेस हैं, जो दो डेटा स्थानांतरण को एक साथ करने की अनुमति देते हैं।[4] इस तरह के अंतरों का मतलब है कि एक V20 आमतौर पर एक ही आवृत्ति पर चलने वाले इंटेल 8088 की तुलना में एक निश्चित समय में अधिक निर्देश पूरा कर सकता है।[2]

V20 को 2-माइक्रोन सीमॉस प्रौद्योगिकी में निर्मित किया गया था।[5][3] प्रारंभिक संस्करण 5, 8, और 10 मेगाहर्ट्ज की गति पर चलते थे।[6] 1990 में, निर्माण प्रक्रिया प्रौद्योगिकी के उन्नयन के परिणामस्वरूप बेहतर प्रदर्शन और कम बिजली की खपत के साथ V20H और V20HL का निर्माण हुआ।[5] बाद के संस्करणों में 12 और 16 मेगाहर्ट्ज की गति जोड़ी गयी। V20HL भी पूरी तरह से स्थिर थे, जिससे उनकी क्लॉक रुक गई थी।

V20 को आंतरिक रूप से 16-बिट वाइड बताया गया था। इसमें एक 8-बिट बाहरी डेटा बस का उपयोग किया गया था जिसे एड्रेस बस के लो बाइट के समान पिन पर मल्टीप्लेक्स किया गया था। इसकी 20-बिट वाइड एड्रेस बस 1 एमबी मेमोरी को संबोधित करने में सक्षम थी।

बताया गया कि V20 इंटेल 8087 फ्लोटिंग-पॉइंट यूनिट (एफपीयू) कोप्रोसेसर के साथ अनुकूल था।[7] एनईसी ने अपना स्वयं का एफपीयू, μPD72091 भी डिज़ाइन किया था, जिसे उत्पादन तक पहुंचने से पहले रद्द कर दिया गया था। उन्होंने एक संशोधित डिज़ाइन, μPD72191 के साथ इसका अनुसरण किया, लेकिन यह स्पष्ट नहीं है कि इस दूसरे भाग के कितने, यदि कोई थे, उत्पादित किए गए थे।[8]

V30, 16-बिट वाइड बाहरी डेटा बस वाला लगभग समान सीपीयू, 1 मार्च 1984 को प्रारम्भ हुआ।[9][5] यह पिन और ऑब्जेक्ट-कोड इंटेल 8086 के साथ अनुकूल था।

आईएसए एक्सटेंशन

सोनी CXQ70108D 8 मेगाहर्ट्ज

V20 के आईएसए में बिट हेरफेर, पैक्ड बीसीडी संचालन, गुणा और भाग के निर्देशों के साथ कई निर्देश शामिल हैं जो 8088 द्वारा निष्पादित नहीं किए गए हैं। उनमें इंटेल 80286 से नए वास्तविक-मोड निर्देश भी शामिल हैं।[10]

ADD4S, SUB4S, और CMP4S निर्देश मेमोरी में संग्रहीत विशाल पैक्ड बाइनरी-कोडेड दशमलव संख्याओं को जोड़ने, घटाने और तुलना करने में सक्षम थे। निर्देश ROL4और ROR4चार-बिट निबल्स को घुमाते हैं। एक अन्य परिवार में TEST1, SET1, CLR1, और NOT1 निर्देश शामिल हैं, जो अपने ऑपरेंड के एकल बिट्स का परीक्षण, सेट, स्पष्ट और उलटा करते हैं, लेकिन बाद के i80386 समकक्ष BT, BTS, BTR और BTCकी तुलना में बहुत कम कुशल हैं; न ही उनकी एनकोडिंग संगत है। एकपक्षीय लंबाई (EXT, INS) के बिट फ़ील्ड निकालने और डालने के लिए दो निर्देश थे। और अंत में, दो अतिरिक्त दोहराव उपसर्ग, REPE और REPNEथे, जिन्होंने बाइट्स या शब्दों की एक स्ट्रिंग (निर्देशSCASऔरCMPSके साथ) को स्कैन करने के लिए मूल आरईपीई और आरईपीएनई निर्देशों में संशोधन किया, जबकि कम या ज्यादा की स्थिति सही थी।[11]

V20 ने एक मोड की पेशकश की जो इंटेल 8080 सीपीयू का अनुकरण करता था। 8080 अनुकरण प्रारंभ करने के लिए एकBRKEMअनुदेश जारी किया जाता है। निर्देश का ऑपरेंड एक इंटरप्ट संख्या निर्दिष्ट करता है जिसके वेक्टर में सेगमेंट:ऑफसेट होता है जहां अनुकरण शुरू होना है। समाप्त करने के लिए, 8080 कोड में एकRETEMनिर्देश जारी किया जाता है। एक सुविधा जिसे अक्सर नियोजित नहीं किया जाता है वह हैCALLN(कॉल नेटिव) जो 8086-प्रकार की इंटरप्ट कॉल जारी करती है जो x86 कोड (जो IRET का उपयोग करके वापस आती है) को 8080 कोड के साथ मिलाने में सक्षम बनाती है।

एक अन्य मोड ने प्रोसेसर को HALT निर्देश के माध्यम से बिजली-बचत स्थिति में डाल दिया था।[6][7]

मुकदमे

1982 में इंटेल ने NEC के μPD8086 और μPD8088 पर मुकदमा दायर किया। यह मुकदमा अदालत के बाहर सुलझाया गया था, जिसमें एनईसी इंटेल से डिजाइनों को लाइसेंस देने के लिए सहमत हो गया था।[12]

1984 के अंत में इंटेल ने एनईसी के खिलाफ फिर से मुकदमा दायर किया, जिसमें दावा किया गया कि वी20 और वी30 में माइक्रोकोड ने 8088 और 8086 प्रोसेसर के लिए अपने पेटेंट का उल्लंघन किया।[13]एनईसी सॉफ्टवेयर इंजीनियर हिरोकी कानेको ने इंटेल सीपीयू के हार्डवेयर डिजाइन और मूल इंटेल माइक्रोकोड दोनों का अध्ययन किया था।

अपने फैसले में, अदालत ने निर्धारित किया कि नियंत्रण स्टोर में माइक्रोकोड एक कंप्यूटर प्रोग्राम का गठन करता है, और इसलिए कॉपीराइट द्वारा सुरक्षित है।[14]उन्होंने यह भी पाया कि इंटेल ने यह सुनिश्चित करने की उपेक्षा करके कि सभी द्वितीय-स्रोत चिप्स उपयुक्त रूप से चिह्नित किए गए थे, अपना कॉपीराइट जब्त कर लिया है। अदालत ने यह भी निर्धारित किया कि एनईसी ने केवल इंटेल के माइक्रोकोड की नकल नहीं की, और यह कि वी20 और वी30 में माइक्रोकोड इंटेल के पेटेंट का उल्लंघन नहीं करने के लिए इंटेल से पर्याप्त रूप से अलग था।

मामले में जज ने एनईसी के साफ कमरे का डिजाइन साक्ष्य को स्वीकार किया। उन्होंने Rev.0 कोड के संबंध में टिप्पणी किए बिना NEC के Rev.2 माइक्रोकोड के निर्माण के संबंध में रिवर्स इंजीनियरिंग के NEC के उपयोग को भी मंजूरी दे दी।[14]: 212–221 

संस्करण और उत्तराधिकारी

एक मदरबोर्ड पर V20
एनईसी वी30 (μPD70116), 10 मेगाहर्ट्ज
एनईसी V40 (μPD70208)
एनईसी V53A (µPD70236A)
Product Part no. Details
NEC V30 μPD70116 Essentially an NEC V20 with a 16-bit external data bus, the V30 was pin compatible with the Intel 8086. The V30 was a factory upgrade from the 8086 used in the GTD-5 EAX Class 5 central office switch. It was also used in the Psion Series 3, the NEC PC-9801VM, the Olivetti PCS86, the Applied Engineering "PC Transporter" card for the Apple II series of computers, and in various arcade machines (particularly ones made by Irem) in the late 1980s. Years later, a low-voltage V30 MZ version was used in Bandai's handheld WonderSwan game console.
NEC V20HL μPD70108H High-speed (up to 16 MHz), low-power version of the V20.
NEC V30HL μPD70116H High-speed (up to 16 MHz), low-power version of the V30.
NEC V25 µPD70320 A microcontroller version of the NEC V20.
NEC V25HS μPD79011 A version of the V25 with the RX116 RTOS in the internal ROM.
NEC V25+ μPD70325 High-speed version of the V25.
NEC V33 μPD70136 A version of the V30 with separate address and data buses and with instruction decode done by hardwired logic rather than a microprogrammed control store. Throughput is twice as high as a V30 for the same clock frequency. The V33 has performance equivalent to Intel 80286. Memory address space is increased to 16M bytes. Two additional instructions, BRKXA and RETXA, support the extended addressing mode. 8080 emulation is not supported.
NEC V33A μPD70136A Differs from the V33 in that it has interrupt vector numbers compatible with Intel's 80X86 processors.
NEC V35 μPD70330 A microcontroller version of the NEC V30.
NEC V35HS μPD79021 A version of the V35 with the RX116 RTOS in the internal ROM.
NEC V35+ μPD70335 A high-speed version of the V35.
NEC V40 μPD70208 An embedded version of the V20, integrated Intel-compatible 8251 USART, 8253 programmable interval timer, and 8255 parallel port interface. Used in the Olivetti PC1, Digisystems Jetta XD, the Sharp PC-4500 and the Zenith Eazy PC.
NEC V40HL μPD70208H A high-speed, low-voltage version of the V40.
NEC V50 μPD70216 An embedded version of the V30. It is the main CPU in the Akai S1000 and S1100, and the Korg M1.[15][16]
NEC V50HL μPD70216H A high-speed, low-voltage version of the V50.
NEC V41 μPD70270 Integrates a V30HL core and PC-XT peripherals: 8255 parallel port interface, 8254 programmable interval timer, 8259 PIC, 8237 DMA controller and 8042 keyboard controller. Also integrates full DRAM controller.
NEC V51 μPD70280 Integrates a V30HL core and PC-XT peripherals: 8255 parallel port interface, 8254 programmable interval timer, 8259 PIC, 8237 DMA controller and 8042 keyboard controller. Also integrates full DRAM controller. Was used in the Olivetti Quaderno PT-XT-20.
NEC V53 μPD70236 Integrates a V33 core with 4-channel DMA (μPD71087/i8237), UART (μPD71051/i8251), three timer/counters (μPD71054/i8254) and interrupt controller (μPD71059/i8259). It was used in the Akai MPC3000[17][18] and Akai SG01v.
NEC V53A μPD70236A Integrates some peripherals with a V33A core. Used in Sharp Zaurus PI-B304/B308
NEC V55PI μPD70433
Vadem VG230 A single-chip PC platform.[19] The VG230 contained a 16 MHz NEC V30HL processor and IBM PC/XT-compatible core logic, LCD controller (CGA/AT&T640x400) with touch-plane support, keyboard matrix scanner, dual PCMCIA 2.1 card controller, EMS 4.0 hardware support for up to 64 MB, and built-in timer, PIC, DMA, UART and RTC controllers. It was used in the HP OmniGo 100, 120 and IBM Simon.[20]
Vadem VG330 Successor to the VG230, it contained a 32 MHz NEC V30MX processor and IBM PC/AT-compatible core logic with dual PICs, LCD controller (640x480), keyboard matrix scanner, PC Card ExCA 2.1 controller and SIR port.
NEC V60 μPD70616 With the V60 processor, NEC departed from the x86 design and launched a new, 32-bit CISC architecture. The V60 and the V70, which differed mainly in the widths of their respective external address and data busses, both included a V20/V30 emulation mode.[21]: §10 [8]


यह भी देखें

संदर्भ

  1. 1.0 1.1 1.2 "8088 & V20". X86 CPU's Guide. 2018-11-17.
  2. 2.0 2.1 2.2 Gennadiy, Shvets. "NEC V20 processor family". CPU-World.
  3. 3.0 3.1 Davis, Stephen R. (1985-12-24). "Turbocharging Your PC with the V-Series". PC Magazine. pp. 181–186.
  4. Chodorek, Robert Ryszard (November–December 2021). "NEC V20: Inspiring, Inconspicuous". IEEE Micro. 41 (6): 158–159. doi:10.1109/MM.2021.3115870.
  5. 5.0 5.1 5.2 1983年 — 16bitマイクロプサッサV30の開発(NEC) [1983 — Development of the V30 16-bit Microprocessor (NEC)] (in 日本語). 2010-10-23. Archived from the original on 2019-07-13. Retrieved 2020-07-14.
  6. 6.0 6.1 µPD70108 — V20 16-/8-bit Microprocessor (PDF). NEC. June 1994.
  7. 7.0 7.1 Mahoney, Bob (1985-10-16). "Output of file: NECV20B.ALL contained in archive: NEC-V20.ZIP". The Programmer's Corner.
  8. 8.0 8.1 Culver, John (2021-09-01). "NEC's Forgotten FPUs". The CPU Shack.
  9. "Nec V30 D70116C-10". X86 CPUS' GUIDE. 2020-07-15.
  10. Hummel, Robert L. (1988-06-14). "PC Tutor — Mixing Processors". PC Magazine. pp. 377–378.
  11. "NEC User's Manual, 16-Bit V Series, 16-/8- and 16-bit microprocessors, Instruction" (PDF). September 2000. Retrieved 2014-11-25.
  12. Lemos, Robert (1998-06-08). "NEC case opened up market for cloning". ZDNet.
  13. Parker, Rachel (1989-02-13). "Judge Declares Microcode Copyrightable". InfoWorld. p. 8.
  14. 14.0 14.1 Contreras, Jorge; Handley, Laura; Yang, Terrence (March–May 1990). "NEC v. Intel: Breaking New Ground in the Law of Copyright" (PDF). Harvard Journal of Law and Technology. 3: 209–222.
  15. Korg M1 Service Manual
  16. Russ, Martin (July 1989). "Korg M1R". Sound On Sound. United Kingdom. pp. 48–52. Retrieved 2022-08-13.
  17. "Mame/Mpc3000.CPP at 251b11266dcd394741e6b48c00a5c9131ef68673 · mamedev/Mame". GitHub. 2022-11-23.
  18. "AKAI MPC 3000: The Best Drum Machine of All Time". Audio Jive. 2020-12-09.
  19. Vadem VG230 Developer's Manual
  20. Nochkin, Alexander (2013-07-10). "IBM Simon — первый в мире смартфон. Что внутри?" [The IBM Simon is the world's first smartphone. What is inside?]. habr.com (in русский).
  21. μPD70616 Programmer's Reference Manual (PRELIMINARY ed.). NEC. November 1986.


अग्रिम पठन


बाहरी संबंध