FPGA: இந்த சில்லுகள் மற்றும் அவற்றின் நிரலாக்கத்தைப் பற்றி

FPGA சிப்

தி FPGA கள் மேலும் மேலும் பிரபலமாகிவிட்டன கடைசி காலங்களில். தொழில்முறை பயன்பாடுகளுக்கு கூட இந்த சில்லுகள் பெரும்பாலும் பயன்படுத்தப்படுகின்றன, ஆனால் இது குறிக்கும் அனைத்து நன்மைகளையும் கொண்ட ஒரு சில்லுக்குள் ஒரு தனித்துவமான சுற்றுவட்டத்தை செயல்படுத்த விரும்பும் DIYers மற்றும் தயாரிப்பாளர்களுக்கும். உங்கள் தளவமைப்புகள் அல்லது வடிவங்களை அனுப்ப ஒரு தொழிற்சாலையைக் கண்டுபிடிப்பது மலிவானது அல்லது எளிதானது அல்ல, உங்களுக்காக தனிப்பயன் சில்லு தயாரிக்கப்படுகிறது.

சில ஃபவுண்டரிகள் அனுமதிக்கின்றன என்பது உண்மைதான் செதில்கள் அல்லது மல்டி ப்ராஜெக்ட் செதில்களை உருவாக்குங்கள் தனிநபர்கள் அல்லது பல்கலைக்கழகங்களிலிருந்து சில்லுகளைச் சோதிக்க. இந்த வகையான தொழிற்சாலைகள், நான் சொல்வது போல், கண்டுபிடிப்பது கடினம், அவை பொதுவாக வெளிநாட்டில் உள்ளன, அவை மலிவானவை அல்ல. சிறிது நேரத்திற்குப் பிறகு, உங்கள் சில்லுகளின் மாதிரிகள் ஒப்புக் கொள்ளப்பட்ட முகவரிக்கு அனுப்பப்படுகின்றன, ஆனால் இவை சோதனை செய்யவோ அல்லது அவை செயல்படுகின்றனவா என்பதை சரிபார்க்கவோ அவை பொறுப்பல்ல. இது உங்கள் வடிவமைப்பைப் பொறுத்தது ...

ஒரு அதற்கு மாற்று தீர்வு ஒரு FPGA ஐ வாங்குவது சில்லுக்குள் நீங்கள் செயல்படுத்த வேண்டியதை நிரல் செய்யுங்கள் ...

FPGA என்றால் என்ன?

நிரல்படுத்தக்கூடிய கலங்கள்

FPGA என்பது புலம் நிரல்படுத்தக்கூடிய கேட் வரிசையை குறிக்கிறது. அவை டிஜிட்டல் சாதனங்கள் அல்லது சில்லுகள், அவை நடைமுறையில் எதையும் செயல்படுத்த அனுமதிக்க கட்டமைக்கக்கூடியவை. அதாவது, வேறுவிதமாகக் கூறினால், இது ஒரு வெற்று சில்லு ஆகும், அங்கு நீங்கள் "எழுத" முடியும். அதாவது, நீங்கள் ஒரு CPU, ஒரு நினைவகம், ஒரு கட்டுப்படுத்தி, எந்த தர்க்கம் போன்றவற்றையும் செயல்படுத்தலாம், மிக விரைவான செயல்பாட்டை அடையலாம் மற்றும் மின்னணு கூறுகளுடன் அல்லாமல் ஒரு சில்லுடன் ஒருங்கிணைக்கப்படுவதன் அனைத்து நன்மைகளையும் கொண்டு.

ஷிலின்க்ஸின் இணை நிறுவனர்களான ரோஸ் ஃப்ரீமேன் மற்றும் பெர்னார்ட் வொண்டர்ஷ்மிட் ஆகியோர் 1984 ஆம் ஆண்டில் FPGA ஐ கண்டுபிடித்தவர்கள். அவர்கள் அதை அந்தக் காலத்தின் சிபிஎல்டி சில்லுகளுக்கு ஒரு பரிணாம வளர்ச்சியாகச் செய்தனர். சிபிஎல்டி புரோகிராம் செய்யக்கூடிய சில்லுகள் சில குறைபாடுகளைக் கொண்டிருந்தன, அவை புதிய எஃப்.பி.ஜி.ஏ வடிவமைப்புகளைத் தீர்த்தன, பின்னர் அவை இன்றுவரை உருவாகி வருகின்றன.

FPGA சந்தை நிறுவனங்கள் விரும்பும் அளவுக்கு பலனளிக்கிறது இன்டெல், ஜிலின்க்ஸ், அல்டெரா, விரைவு லாஜிக், லாட்டிஸ் போன்றவை.. இதனால் டெவலப்பர்கள் அல்லது தயாரிப்பாளர்களின் பணியை எளிதாக்குவதற்கு மிகச் சிறந்த தளங்களை வழங்குதல்.

தற்போது இந்த உற்பத்தியாளர்கள் ஒரு நிரல்படுத்தக்கூடிய சில்லு வழங்குவதோடு மட்டுமல்லாமல், அடங்கும் ஏராளமான துணை கூறுகள் டெவலப்பர்களுக்கு கூடுதல் சாத்தியங்களைக் கொண்டு வர. எடுத்துக்காட்டாக, அவற்றில் ஃபிளாஷ் மெமரி செல்கள், எஸ்.டி.ஆர்.ஏ.எம் மெமரி செல்கள் மற்றும் பல உள்ளன.

அவை எதற்காகப் பயன்படுத்தப்படுகின்றன?

நிரல் FPGA க்கு IDE

எனவே, ஒரு FPGA ஒரு ASIC ஐ ஒத்ததாக இருக்கலாம், ஆனால் அது நாம் தேர்வு செய்யலாம் என்னவாக இருக்கும். எடுத்துக்காட்டாக, அதை நிரல் செய்ய ஒரு குறியீட்டை உருவாக்கி அதை ஒரு சிபியு, ஜி.பீ.யூ, ஒரு சேர்க்கை, நினைவக கட்டுப்படுத்தி அல்லது ஒற்றை சிப்பில் செயல்படுத்தப்படும் வேறு எந்த லாஜிக் சர்க்யூட்டாகவும் மாற்றலாம்.

சாத்தியங்கள் மிகவும் முடிவற்றவை. உண்மையில், நீங்கள் வலைத்தளத்தைப் பார்வையிட பரிந்துரைக்கிறேன் opencores.org, பல திட்டங்களை வழங்குவதற்காக அர்ப்பணிக்கப்பட்ட தளம் hardware libre. VHDL, Verligo போன்றவற்றில் குறியீடுகளைக் காண்பீர்கள் ரேம், சிபியு, ஜி.பீ.யூ, கன்ட்ரோலர்கள், ஏ.எல்.யூ, எஃப்.பி.யு, டிகோடர்கள் மற்றும் நீண்ட போன்றவை..

இது எவ்வாறு திட்டமிடப்பட்டுள்ளது?

FPGA புரோகிராமர்

ஒரு FPGA ஐ நிரல் செய்ய, குனு / லினக்ஸ், விண்டோஸ் மற்றும் மேகோஸ் போன்ற நமக்கு பிடித்த இயக்க முறைமையிலிருந்து இதைச் செய்யலாம், இருப்பினும் விண்டோஸுக்கு அதிக மேம்பாட்டு சூழல்கள் உள்ளன. பொதுவாக, FPGA ஐ வழங்கும் அதே நிறுவனங்கள் a வேலை செய்ய மிகவும் முழுமையான IDE ஒரே மென்பொருள் தொகுப்பில் உங்களுக்கு தேவையான அனைத்து கருவிகளையும் எங்கே காணலாம்.

உங்களுக்கும் தேவைப்படும் FPGA சிப் அல்லது போர்டு மற்றும் தேவையான கேபிள் அல்லது புரோகிராமர் எழுதப்பட்ட குறியீட்டை FPGA க்கு அனுப்ப உங்கள் கணினியுடன் FPGA ஐ இணைக்க முடியும், எனவே இது திட்டமிடப்பட்டுள்ளது. இது ஆர்டுயினோ போர்டுடன் நீங்கள் செய்வதைப் போன்றது, ஆர்டுயினோ ஐடிஇ நிரலை மைக்ரோகண்ட்ரோலரின் புரோகிராம் செய்யக்கூடிய நினைவகத்தில் எழுதுகிறது.

FPGA இன் விஷயத்தில் மட்டுமே நம்மிடம் இருப்பது மெமரி செல்கள், மற்றும் வாயில்கள், OR, NOT, Flip-flops மற்றும் பிற போன்ற அடிப்படைக் கூறுகளின் அணி அல்லது வரிசை. டிஜிட்டல் எலக்ட்ரானிக்ஸ் அடிப்படை கூறுகள் அல்லது தொகுதிகள் நாம் பயன்படுத்தலாம். எழுதப்பட்ட நிரலுடன் நாம் என்ன செய்யப் போகிறோம் என்பது, இந்த அத்தியாவசியத் தொகுதிகள் ஒன்றிணைக்கப் போகும் வழியை விதிக்க வேண்டும், ALU போன்ற நாம் விரும்பும் சிறிய சுற்றுகளை உருவாக்குகிறோம்.

அதாவது, எங்கள் ஐடிஇ-யில் ஒரு சேர்க்கையாளரை நிரல் செய்தால், இந்த சேர்க்கையைச் செயல்படுத்த தேவையான தொகுதிகள் அவர்கள் இணைக்கப் போகிறார்கள் FPGA க்குள் சரியான வழியில் சிப் ஒரு சேர்க்கையாளராக செயல்படுகிறது. எளிய சரியானதா? பொதுவாக, இந்த நிரலாக்கத்திற்கு ஒரு உடல் மட்டத்தில் பல முறைகள் பயன்படுத்தப்படுகின்றன, அதாவது நினைவுகள் அல்லது உருகிகள் போன்றவை அந்த வழக்கில் நிரந்தர இணைப்பை உருவாக்குகின்றன.

அவை இயங்கும் வேகம் சார்ந்தது கடிகார அதிர்வெண் நாங்கள் வாங்கிய FPGA படைப்புகள். எடுத்துக்காட்டாக, மிக அடிப்படையானவை வழக்கமாக 50 மெகா ஹெர்ட்ஸில் வேலை செய்யும், மற்றவர்கள் அதிக அதிர்வெண்களில் அவ்வாறு செய்வார்கள். 50 மெகா ஹெர்ட்ஸ் எஃப்.பி.ஜி.ஏ விஷயத்தில், இது வினாடிக்கு 50.000.000 முறை என்ற விகிதத்தில் இயங்கும். நான் ஒரு எடுத்துக்காட்டு வழங்கிய சேர்த்தலுடன் நாங்கள் தொடர்ந்தால், அந்த தொகையை ஒரு நொடியில் நீங்கள் செய்ய முடியும் ...

என்ற கருப்பொருளுடன் தொடர்கிறது நிரலாக்கArduino IDE இல் அல்லது வேறு எந்த நிரலையும் உருவாக்குவது போல நீங்கள் குறியீட்டை எழுதலாம் என்று எங்களுக்குத் தெரிந்தவுடன், அது எவ்வாறு வன்பொருள் மட்டத்தில் செய்யப்படுகிறது என்பதைப் பார்த்தால், அது உண்மையில் இது போன்ற நிரலாக்கமல்ல என்று கூறுவேன். மாறாக இது ஒரு வன்பொருள் விளக்கம். உண்மையில், வன்பொருள் விளக்க மொழிகள் வி.எச்.டி.எல், வெரிலாக் போன்றவை பயன்படுத்தப்படுகின்றன.

உடன் அந்த நிரல் ஒரு தருக்க மட்டத்தில் விவரிக்கப்பட்டுள்ளது நாம் செயல்படுத்த விரும்பும் சிறிய சுற்று என்ன செய்கிறது. பின்னர் அது FPGA க்கு செல்கிறது. சில தளங்கள் சி போன்ற நிரலாக்க மொழிகளில் நிரலாக்கத்தை FPGA இல் ஒரு CPU ஐ செயல்படுத்த அனுமதிக்கின்றன என்பது உண்மைதான் என்றாலும், பின்னர் நினைவகத்தில் ஏற்றுவதற்கான நிரல்களை உருவாக்கி, அந்த செயலியால் செயலாக்கப்படும்.

Arduino உடன் ஒருங்கிணைப்பு

Arduino-FPGA

FPGA கள் வழக்கமாக தனித்தனியாகப் பயன்படுத்தப்படுகின்றன, ஆனால் சந்தையில் பல கருவிகள் மற்றும் கருவிகள் உள்ளன என்பது உண்மைதான், அவை உங்கள் வாழ்க்கையை ஒருங்கிணைக்க எளிதாக்கும் Arduino தளத்துடன் FPGA. Arduino உடன் உங்கள் திட்டங்களுக்கு FPGA களைக் கொண்டுவருவதற்கான ஒரு குழுவின் உதாரணம் MKR விடோர் 4000 ஆகும், இருப்பினும் மற்றவர்கள் உள்ளனர்.

எம்.கே.ஆர் விடோர் 4000 இது மூன்று சில்லுகள் கொண்ட பலகை. அவற்றில் ஒன்று FPGA, குறிப்பாக இன்டெல் சூறாவளி 10. புளூடூத் LE அல்லது குறைந்த நுகர்வு இணைப்பு மற்றும் வைஃபை பொருந்தக்கூடிய பிற சில்லுகளும் உள்ளன. உங்கள் Arduino ஐ இணைப்பு செயல்பாடுகளுடன் வழங்குவதற்கும், FPGA இல் உங்களுக்குத் தேவையானதைச் செயல்படுத்துவதற்கும் ஒரு நல்ல நிரப்பு.

அதை நீங்கள் ஒரு தனிப்பயனாக்கக்கூடிய வன்பொருள், நீங்கள் விரும்பும் நோக்கத்திற்காக நீங்களே கட்டமைக்கப்படுகிறது. இது முடிவற்ற சாத்தியங்களை வழங்குகிறது.


கருத்து தெரிவிப்பதில் முதலில் இருங்கள்

உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுக்கு பொறுப்பு: மிகுவல் ஏஞ்சல் கேடன்
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.