VHDL
- VHDL
VHDL (VHSIC Hardware Description Language) என்பது ஒரு வன்பொருள் விளக்க மொழி (Hardware Description Language - HDL). இது டிஜிட்டல் மின்னணுவியல் அமைப்புகளை விவரிக்கப் பயன்படுகிறது. VHSIC என்பது Very High Speed Integrated Circuit என்பதன் சுருக்கம். VHDL ஆனது அமெரிக்க பாதுகாப்புத் துறையால் 1980களில் உருவாக்கப்பட்டது. இது தற்போது மின்னணுவியல் துறையில் பரவலாகப் பயன்படுத்தப்படுகிறது.
VHDL-இன் வரலாறு
VHDL உருவாக்கப்பட்டதின் முக்கிய நோக்கம், அமெரிக்க பாதுகாப்புத் துறையின் பல்வேறு உற்பத்தியாளர்களிடையே தரப்படுத்தப்பட்ட வடிவமைப்பை உறுதி செய்வதாகும். ஆரம்பத்தில், இது ADA நிரலாக்க மொழியின் அடிப்படையில் உருவாக்கப்பட்டது. 1987-ல் IEEE 1076 தரநிலையாக வெளியிடப்பட்டது. அதன் பிறகு, பல திருத்தங்கள் செய்யப்பட்டு, தற்போது IEEE 1076-2008 தரநிலையாகப் பயன்படுத்தப்படுகிறது.
VHDL-இன் பயன்பாடுகள்
VHDL பலவிதமான டிஜிட்டல் அமைப்புகளை வடிவமைக்கப் பயன்படுகிறது. சில முக்கிய பயன்பாடுகள்:
- ஒருங்கிணைந்த சுற்றுகள் (Integrated Circuits - ICs)
- நிரல்படுத்தக்கூடிய லாஜிக் சாதனங்கள் (Programmable Logic Devices - PLDs)
- FPGA (Field-Programmable Gate Array)
- டிஜிட்டல் சிக்னல் செயலாக்கம் (Digital Signal Processing - DSP)
- கணினி அமைப்பு (Computer Architecture)
- மின்னணுவியல் அமைப்புகள் (Electronic Systems)
VHDL-இன் கட்டமைப்பு
VHDL நிரல் ஒரு 'Entity' மற்றும் 'Architecture' ஆகிய இரண்டு முக்கிய பகுதிகளைக் கொண்டது.
- Entity: இது வடிவமைப்பின் வெளிப்புற இடைமுகத்தை வரையறுக்கிறது. அதாவது, உள்ளீடுகள் (Inputs), வெளியீடுகள் (Outputs) மற்றும் பிற வெளிப்புற இணைப்புகளைக் குறிப்பிடுகிறது. இது ஒரு கருப்புப் பெட்டி போன்றது.
- Architecture: இது வடிவமைப்பின் உள் செயல்பாட்டை விவரிக்கிறது. அதாவது, உள்ளீடுகள் எவ்வாறு செயலாக்கப்பட்டு வெளியீடுகள் எவ்வாறு உருவாக்கப்படுகின்றன என்பதை வரையறுக்கிறது. இது வடிவமைப்பின் உண்மையான தர்க்கத்தை உள்ளடக்கியது.
VHDL-இன் அடிப்படை கூறுகள்
VHDL நிரலில் பயன்படுத்தப்படும் சில அடிப்படை கூறுகள்:
- சிக்னல்கள் (Signals): இவை தரவை எடுத்துச் செல்லும் கம்பிகள் போன்றவை.
- மாறிகள் (Variables): இவை தற்காலிகமாக தரவை சேமிக்கப் பயன்படும்.
- நிலையானவை (Constants): இவை மாறாத மதிப்புகளைக் கொண்டிருக்கும்.
- உள்ளீடுகள் (Inputs): இவை வெளிப்புறத்திலிருந்து தரவைப் பெறும்.
- வெளியீடுகள் (Outputs): இவை வெளிப்புறத்திற்கு தரவை அனுப்பும்.
- செயல்முறைகள் (Processes): இவை தொடர்ச்சியாக இயங்கும் நிரல் தொகுதிகள்.
- அம்சங்கள் (Functions): இவை குறிப்பிட்ட செயல்களைச் செய்து முடிவுகளைத் தரும்.
- கூறுகள் (Components): இவை ஏற்கனவே வரையறுக்கப்பட்ட வடிவமைப்புகளை மீண்டும் பயன்படுத்த உதவும்.
தரவு வகைகள் (Data Types)
VHDL பல்வேறு தரவு வகைகளை ஆதரிக்கிறது. சில முக்கியமான தரவு வகைகள்:
- Bit: ஒரு பிட் மதிப்பை (0 அல்லது 1) சேமிக்கப் பயன்படுகிறது.
- Boolean: உண்மை (TRUE) அல்லது பொய் (FALSE) மதிப்புகளை சேமிக்கப் பயன்படுகிறது.
- Integer: முழு எண்களை சேமிக்கப் பயன்படுகிறது.
- Real: தசம எண்களை சேமிக்கப் பயன்படுகிறது.
- Character: எழுத்துக்களை சேமிக்கப் பயன்படுகிறது.
- Array: ஒரே மாதிரியான தரவு வகைகளின் தொகுப்பை சேமிக்கப் பயன்படுகிறது.
விளக்கம் | | |||||
0 அல்லது 1 | | TRUE அல்லது FALSE | | முழு எண்கள் (-127 to 127) | | தசம எண்கள் | | எழுத்துக்கள் | | தரவுகளின் தொகுப்பு | |
VHDL-இல் செயல்முறைகள் (Processes)
VHDL-இல் செயல்முறைகள் என்பவை தொடர்ச்சியாக இயங்கும் நிரல் தொகுதிகள். அவை உள்ளீட்டு சிக்னல்களில் ஏற்படும் மாற்றங்களுக்கு பதிலளிக்கும் வகையில் வடிவமைக்கப்படுகின்றன. செயல்முறைகள் 'wait' கூற்றுகளைப் பயன்படுத்தி குறிப்பிட்ட நிகழ்வுகளுக்காக காத்திருக்கும்.
எடுத்துக்காட்டு:
```vhdl PROCESS (a, b) BEGIN
-- a அல்லது b மாறும் போது இந்த செயல்முறை இயங்கும் c <= a AND b;
END PROCESS; ```
VHDL-இல் அம்சங்கள் (Functions)
அம்சங்கள் என்பவை குறிப்பிட்ட செயல்களைச் செய்து முடிவுகளைத் தரும் நிரல் தொகுதிகள். அவை உள்ளீட்டு மதிப்புகளைப் பெற்று, ஒரு வெளியீட்டு மதிப்பைத் தரும்.
எடுத்துக்காட்டு:
```vhdl FUNCTION add (x, y : INTEGER) RETURN INTEGER IS BEGIN
RETURN x + y;
END FUNCTION; ```
VHDL-இல் கூறுகள் (Components)
கூறுகள் என்பவை ஏற்கனவே வரையறுக்கப்பட்ட வடிவமைப்புகளை மீண்டும் பயன்படுத்த உதவும். அவை Entity மற்றும் Architecture பகுதிகளைக் கொண்டிருக்கும்.
எடுத்துக்காட்டு:
ஒரு முழு கூட்டியை (Full Adder) கூறாக வரையறுக்கலாம். பின்னர், அதை மற்ற வடிவமைப்புகளில் பயன்படுத்தலாம்.
VHDL-இல் சமிக்ஞை ஒதுக்கீடு (Signal Assignment)
VHDL-இல் சமிக்ஞை ஒதுக்கீடு இரண்டு வழிகளில் செய்யப்படலாம்:
- தொடர்ச்சியான ஒதுக்கீடு (Concurrent Assignment): இது '=' குறியீட்டைப் பயன்படுத்தி செய்யப்படுகிறது. சமிக்ஞையின் மதிப்பு தொடர்ந்து கண்காணிக்கப்பட்டு, வலது பக்கத்தில் உள்ள வெளிப்பாடு மாறும் போது புதுப்பிக்கப்படும்.
- தொடர் ஒதுக்கீடு (Sequential Assignment): இது '<=' குறியீட்டைப் பயன்படுத்தி செய்யப்படுகிறது. சமிக்ஞையின் மதிப்பு ஒரு செயல்முறையில் மாற்றப்படும்.
VHDL-இல் கட்டுப்பாட்டு கட்டமைப்புகள் (Control Structures)
VHDL நிரலில் பயன்படுத்தப்படும் சில கட்டுப்பாட்டு கட்டமைப்புகள்:
- IF-THEN-ELSE: நிபந்தனையின் அடிப்படையில் வெவ்வேறு கூற்றுகளை இயக்கப் பயன்படுகிறது.
- CASE: பல நிபந்தனைகளில் ஒன்றைச் சரிபார்த்து, அதற்கேற்ப கூற்றுகளை இயக்கப் பயன்படுகிறது.
- LOOP: ஒரு குறிப்பிட்ட கூற்றை பல முறை இயக்கப் பயன்படுகிறது.
VHDL-இல் நூலகங்கள் (Libraries)
VHDL நூலகங்கள் என்பவை ஏற்கனவே வரையறுக்கப்பட்ட கூறுகள், தரவு வகைகள் மற்றும் செயல்பாடுகளைக் கொண்டிருக்கும். அவற்றை VHDL நிரலில் பயன்படுத்த, 'use' கூற்றைப் பயன்படுத்த வேண்டும்.
எடுத்துக்காட்டு:
```vhdl library ieee; use ieee.std_logic_1164.all; ```
இந்த கூற்று IEEE நூலகத்தில் உள்ள std_logic_1164 தொகுப்பைப் பயன்படுத்துகிறது. இது std_logic தரவு வகையை வரையறுக்கிறது.
VHDL-இல் உருவகப்படுத்துதல் (Simulation)
VHDL நிரலை உருவகப்படுத்துதல் என்பது, வடிவமைப்பைச் சோதித்துப் பார்ப்பதற்கான ஒரு முக்கியமான படி. உருவகப்படுத்துதல் கருவிகள் (Simulation Tools) VHDL நிரலை இயக்கி, உள்ளீட்டு சிக்னல்களுக்கு ஏற்ப வெளியீடுகளைக் கணிக்கின்றன. இதன் மூலம், வடிவமைப்பில் உள்ள பிழைகளைக் கண்டறிந்து சரிசெய்யலாம்.
உருவகப்படுத்துதலுக்கான கருவிகள்:
- ModelSim
- Xilinx Vivado Simulator
- Aldec Active-HDL
VHDL-இன் மேம்பட்ட கருத்துக்கள்
- ஜெனரிக்ஸ் (Generics): வடிவமைப்பின் அளவுருக்களை மாற்றியமைக்கப் பயன்படுகிறது.
- பேக்கேஜ்கள் (Packages): தரவு வகைகள், மாறிலிகள் மற்றும் செயல்பாடுகளைக் குழுவாக வரையறுக்கப் பயன்படுகிறது.
- சப்ரோகிராம்கள் (Subprograms): அம்சங்கள் மற்றும் செயல்முறைகள் போன்ற நிரல் தொகுதிகள்.
- ஸ்டேட் மெஷின்கள் (State Machines): குறிப்பிட்ட நிலைகளில் இயங்கும் வடிவமைப்புகளை உருவாக்கப் பயன்படுகிறது.
பைனரி ஆப்ஷன் பரிவர்த்தனைக்கும் VHDL-க்கும் தொடர்பு
VHDL பொதுவாக வன்பொருள் வடிவமைப்பிற்குப் பயன்படுத்தப்படுகிறது. பைனரி ஆப்ஷன் பரிவர்த்தனை என்பது நிதிச் சந்தையில் ஒரு சூதாட்ட வடிவம். இரண்டுக்கும் நேரடி தொடர்பு இல்லை. இருப்பினும், VHDL-இல் உள்ள லாஜிக் மற்றும் அல்காரிதம்களைப் பயன்படுத்தி, பைனரி ஆப்ஷன் பரிவர்த்தனைக்கான தானியங்கி வர்த்தக அமைப்புகளை உருவாக்க முடியும். ஆனால் இது மிகவும் சிக்கலான மற்றும் ஆபத்தான முயற்சியாகும்.
தொடர்புடைய உத்திகள், தொழில்நுட்ப பகுப்பாய்வு மற்றும் அளவு பகுப்பாய்வு:
- சந்தை போக்கு பகுப்பாய்வு
- சாதகமான நிலை பகுப்பாய்வு
- ஆதரவு மற்றும் எதிர்ப்பு நிலைகள்
- சராசரி நகர்வு ஒருங்கிணைப்பு (Moving Average Convergence Divergence - MACD)
- சார்பு வலிமை குறியீடு (Relative Strength Index - RSI)
- போல்லிங்கர் பட்டைகள் (Bollinger Bands)
- ஃபைபோனச்சி திருத்தம் (Fibonacci Retracement)
- ஜப்பானிய மெழுகுவர்த்தி வடிவங்கள் (Japanese Candlestick Patterns)
- ஆபத்து மேலாண்மை உத்திகள்
- போர்ட்ஃபோலியோ பல்வகைப்படுத்தல்
- பண மேலாண்மை
- சந்தை உணர்வு பகுப்பாய்வு
- பொருளாதார குறிகாட்டிகள்
- சமூக ஊடக பகுப்பாய்வு
- செயற்கை நுண்ணறிவு வர்த்தகம்
VHDL கற்றலுக்கான ஆதாரங்கள்
- IEEE 1076 தரநிலை ஆவணம்
- VHDL பயிற்சி புத்தகங்கள்
- ஆன்லைன் VHDL பயிற்சி வகுப்புகள்
- VHDL மன்றங்கள் மற்றும் சமூகங்கள்
VHDL ஒரு சக்திவாய்ந்த வன்பொருள் விளக்க மொழி. இது டிஜிட்டல் அமைப்புகளை வடிவமைப்பதற்கும், உருவகப்படுத்துவதற்கும், செயல்படுத்துவதற்கும் பயன்படுகிறது. VHDL-ஐ கற்றுக்கொள்வது மின்னணுவியல் பொறியாளர்களுக்கு ஒரு மதிப்புமிக்க திறமையாகும்.
இப்போது பரிவர்த்தனையை தொடங்குங்கள்
IQ Option-ல் பதிவு செய்யவும் (குறைந்தபட்ச டெபாசிட் $10) Pocket Option-ல் கணக்கு திறக்கவும் (குறைந்தபட்ச டெபாசிட் $5)
எங்கள் சமூகத்தில் சேருங்கள்
எங்கள் Telegram சேனலுக்கு சேர்ந்து @strategybin பெறுங்கள்: ✓ தினசரி பரிவர்த்தனை சமிக்ஞைகள் ✓ சிறப்பு உத்திகள் மற்றும் ஆலோசனைகள் ✓ சந்தை சார்ந்த அறிவிப்புகள் ✓ தொடக்க அடிப்படையிலான கல்வி பொருட்கள்