प्रोग्रामर (हार्डवेयर)

एक प्रोग्रामर, डिवाइस प्रोग्रामर, चिप प्रोग्रामर, प्रोग्रामेबल रीड-ओनली मेमोरी # प्रोग्रामिंग, या प्रोम लेखक इलेक्ट्रॉनिक उपकरण का एक टुकड़ा है जो प्रोग्राम करने योग्य गैर-वाष्पशील मेमोरी को कॉन्फ़िगर करने के लिए लिखित सॉफ़्टवेयर की व्यवस्था करता है | गैर-वाष्पशील एकीकृत सर्किट, जिसे प्रोग्राम करने योग्य डिवाइस कहा जाता है।  लक्ष्य उपकरणों में  प्रोग्राम करने योग्य रीड-ओनली मेमोरी, EPROM, EEPROM, फ्लैश मेमोरी, मल्टीमीडिया कार्ड#eMMC, मैग्नेटोरेसिस्टिव रैंडम-एक्सेस मेमोरी, फेरोइलेक्ट्रिक रैम, गैर-वाष्पशील रैंडम-एक्सेस मेमोरी, प्रोग्रामेबल लॉजिक डिवाइस, प्रोग्राम करने योग्य तर्क सरणी, प्रोग्राम करने योग्य सरणी तर्क शामिल हैं। , सामान्य सरणी तर्क,  जटिल प्रोग्रामेबल लॉजिक डिवाइस , क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला और  microcontroller ।

समारोह
प्रोग्रामर हार्डवेयर के दो वेरिएंट हैं। एक प्रोग्रामर पर सॉकेट के साथ लक्ष्य डिवाइस को स्वयं कॉन्फ़िगर कर रहा है। एक अन्य मुद्रित सर्किट बोर्ड पर डिवाइस को कॉन्फ़िगर कर रहा है।

पूर्व मामले में, लक्ष्य डिवाइस को प्रोग्रामर के शीर्ष पर एक सॉकेट (आमतौर पर शून्य सम्मिलन बल) में डाला जाता है। यदि डिवाइस एक मानक डुअल इन-लाइन पैकेज नहीं है, तो एक प्लग-इन एडेप्टर बोर्ड, जो  पदचिह्न (इलेक्ट्रॉनिक्स)  को दूसरे सॉकेट के साथ परिवर्तित करता है, का उपयोग किया जाता है।

बाद के मामले में, डिवाइस प्रोग्रामर सीधे एक कनेक्टर द्वारा मुद्रित सर्किट बोर्ड से जुड़ा होता है, आमतौर पर एक केबल के साथ। इस तरीके को ऑन-बोर्ड प्रोग्रामिंग, इन-सर्किट प्रोग्रामिंग या इन-सिस्टम प्रोग्रामिंग कहा जाता है। बाद में कनेक्टिंग पिन के माध्यम से सिग्नल लगाकर प्रोग्रामर से डिवाइस में डेटा ट्रांसफर किया जाता है। कुछ उपकरणों में एक सीरियल इंटरफ़ेस होता है प्रोग्रामिंग डेटा (JTAG इंटरफ़ेस सहित) प्राप्त करने के लिए। अन्य उपकरणों को डिवाइस में डेटा प्रोग्रामिंग के लिए समानांतर पिन पर डेटा की आवश्यकता होती है, जिसके बाद एक उच्च वोल्टेज के साथ प्रोग्रामिंग पल्स होता है।

आमतौर पर डिवाइस प्रोग्रामर एक निजी कंप्यूटर से समानांतर पोर्ट के माध्यम से जुड़े होते हैं, USB पोर्ट, या लोकल एरिया नेटवर्क इंटरफ़ेस। कंप्यूटर पर एक सॉफ्टवेयर प्रोग्राम तब डेटा को प्रोग्रामर को स्थानांतरित करता है, डिवाइस और इंटरफ़ेस प्रकार का चयन करता है, और डिवाइस के अंदर डेटा को पढ़ने/लिखने/मिटाने/खाली करने के लिए प्रोग्रामिंग प्रक्रिया शुरू करता है।

प्रकार
डिवाइस प्रोग्रामर के चार सामान्य प्रकार हैं:


 * 1) स्वचालित प्रोग्रामर (मल्टी-प्रोग्रामिंग साइट्स, सॉकेट्स का एक सेट है) बड़े पैमाने पर उत्पादन के लिए। ये प्रणालियां ऑन-बोर्ड साइटों के साथ रोबोटिक पिक एंड प्लेस हैंडलर का उपयोग करती हैं। यह उच्च मात्रा और जटिल आउटपुट (जैसे लेजर अंकन, 3डी निरीक्षण, टेप इनपुट/आउटपुट, आदि) के लिए अनुमति देता है।
 * 2) प्रथम लेख विकास और लघु-श्रृंखला उत्पादन के लिए विकास प्रोग्रामर (आमतौर पर एकल-प्रोग्रामिंग साइट)।
 * 3) विकास और क्षेत्र सेवा के लिए पॉकेट प्रोग्रामर।
 * 4) केवल कुछ प्रकार के सर्किट के लिए विशिष्ट प्रोग्रामर, जैसे क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला, माइक्रोकंट्रोलर,  और EEPROM प्रोग्रामर।

इतिहास
पुराने PROM प्रोग्रामर्स के बारे में, क्योंकि कई प्रोग्रामेबल डिवाइसों में अलग-अलग वोल्टेज की जरूरत होती है, हर पिन ड्राइवर को 0 की रेंज में अलग-अलग वोल्टेज लगाने में सक्षम होना चाहिए25 वोल्ट। लेकिन मेमोरी डिवाइस प्रौद्योगिकी की प्रगति के अनुसार, हाल ही में फ्लैश मेमोरी प्रोग्रामर्स को उच्च वोल्टेज की आवश्यकता नहीं होती है। कम्प्यूटिंग के शुरुआती दिनों में, बूटिंग मैकेनिज्म एक यांत्रिक उपकरण था जिसमें आमतौर पर स्विच और  प्रकाश उत्सर्जक डायोड  शामिल होते थे। इसका मतलब है कि प्रोग्रामर एक उपकरण नहीं बल्कि एक इंसान था, जिसने स्विच को ऑन और ऑफ पोजीशन की एक श्रृंखला में सेट करके एक-एक करके मशीन कोड दर्ज किया। स्विच की ये स्थिति आज की असेंबली भाषा के समान मशीन कोड से मेल खाती है। आजकल, EEPROMs का उपयोग बूटस्ट्रैपिंग तंत्र के लिए BIOS के रूप में किया जाता है, और प्रोग्रामिंग के लिए यांत्रिक स्विच संचालित करने की कोई आवश्यकता नहीं है।

निर्माता
प्रत्येक विक्रेता की वेब साइट के लिए, #बाहरी लिंक| देखें बाहरी लिंक अनुभाग।
 * बैट्रोनिक्स
 * बीपीएम माइक्रोसिस्टम्स
 * DiagProg4: CodiProg
 * जेलटेक|जेलटेक इंक.
 * कोनिटेक डेटा सिस्टम्स
 * MCUmall Electronics Inc.
 * डेटा I/O
 * Elnec
 * DediProg प्रौद्योगिकी कं, लिमिटेड
 * Minato Holdings
 * हाय-लो सिस्टम रिसर्च
 * फाइटन, इंक.

यह भी देखें

 * ऑफ-लाइन प्रोग्रामिंग (रोबोटिक्स)|ऑफ-लाइन प्रोग्रामिंग
 * इन-सिस्टम प्रोग्रामिंग
 * डिबग पोर्ट
 * जेटीएजी
 * सामान्य फ्लैश मेमोरी इंटरफ़ेस
 * नंद फ्लैश इंटरफेस वर्किंग ग्रुप खोलें
 * एटमेल एवीआर # प्रोग्रामिंग इंटरफेस
 * तस्वीर माइक्रोकंट्रोलर#डिवाइस प्रोग्रामर
 * इंटेल हेक्स - ASCII फ़ाइल स्वरूप
 * SREC (फ़ाइल स्वरूप) - ASCII फ़ाइल स्वरूप
 * निष्पादन योग्य और लिंक करने योग्य प्रारूप - बाइनरी फ़ाइल स्वरूप
 * COFF - बाइनरी फ़ाइल स्वरूप
 * हार्डवेयर विवरण भाषा

बाहरी संबंध

 * Technical information
 * JEDEC - Memory Configurations: JESD21-C
 * JEDEC - Common Flash Interface (CFI) Specification, JESD68.01, September 2003.
 * Intel - Common Flash Interface (CFI) and Command Sets
 * IEEE Std 1532-2002 (Revision of IEEE Std 1532-2001) - IEEE Standard for In-System Configuration of Programmable Devices
 * What is the IEEE 1532 Standard? | Keysight Technologies
 * JEDEC - STANDARD DATA TRANSFER FORMAT BETWEEN DATA PREPARATION SYSTEM AND PROGRAMMABLE LOGIC DEVICE PROGRAMMER: JESD3-C, Jun 1994
 * JEDEC - JC-42 Solid State Memories


 * Manufactures
 * BPM Microsystems
 * Batronix GmbH & Co. KG
 * Xeltek Inc.
 * Conitec Datasystems Inc.
 * Data I/O Corporation
 * Elnec s.r.o.
 * Dediprog
 * Minato Holdings Inc.
 * Hi-Lo System Research Co. Ltd.
 * Phyton, Inc.
 * halec