ນີ້ແມ່ນຄໍາສັ່ງ gvhdl ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
gvhdl - Frontend ກັບ VHDL compiler/simulator FreeHDL.
ສະຫຼຸບສັງລວມ
gvhdl [ທາງເລືອກ] ... [VHDL_FILES] ... [OBJECT_FILES]...
ລາຍລະອຽດ
FreeHDL ເປັນຊຸດ compiler/simulator ສໍາລັບພາສາຄໍາອະທິບາຍຮາດແວ VHDL. VHDL'93
ເຊັ່ນດຽວກັນກັບມາດຕະຖານ VHDL'87 ໄດ້ຮັບການສະຫນັບສະຫນູນ.
FreeHDL ແປໄຟລ໌ຕົ້ນສະບັບ VHDL ເປັນ C++. ຫຼັງຈາກນັ້ນ, ແຫຼ່ງ C ++ ສາມາດເປັນ
ລວບລວມແລະເຊື່ອມຕໍ່ກັບ kernel ເພື່ອສ້າງໂຄງການຈໍາລອງ. ເລີ່ມຕົ້ນການຜະລິດ
ການປະຕິບັດຈະຈໍາລອງຮູບແບບ VHDL ທີ່ສອດຄ້ອງກັນ. ຂະບວນການກໍ່ສ້າງຕົວຈິງເພື່ອ
ສ້າງ simulator ຈາກແຫຼ່ງ VHDL ແມ່ນຂະບວນການທີ່ສັບສົນທີ່ຖືກຈັດການໂດຍ
gvhdl script
VHDL_FILES ແມ່ນລາຍຊື່ຂອງໄຟລ໌ແຫຼ່ງ VHDL ທີ່ຕ້ອງລົງທ້າຍດ້ວຍ .vhdl ຫຼື .vhd. ທໍາອິດ
ຊື່ໄຟລ໌ VHDL ຍັງກໍານົດຊື່ຂອງ simulator ປະຕິບັດໄດ້. ນີ້ແມ່ນ, ສຸດທ້າຍ
executable ຈະຖືກຕັ້ງຊື່ຕາມໄຟລ໌ VHDL ທໍາອິດໂດຍບໍ່ມີນາມສະກຸນ .vhdl ຫຼື .vhd.
ໃຫ້ສັງເກດວ່າໄຟລ໌ວັດຖຸເຊັ່ນດຽວກັນກັບ simulator ຈະຖືກສ້າງຂື້ນໃນປະຈຸບັນ
ລະບົບ.
OBJECT_FILES ກໍານົດບັນຊີລາຍຊື່ຂອງໄຟລ໌ວັດຖຸທີ່ເຊື່ອມຕໍ່ກັບ simulator ປະຕິບັດໄດ້.
gvhdl ພິຈາລະນາໄຟລ໌ທັງໝົດທີ່ລົງທ້າຍດ້ວຍ .o ເປັນໄຟລ໌ວັດຖຸ. ໂດຍປົກກະຕິ, ວັດຖຸເຫຼົ່ານີ້
ໄຟລ໌ແມ່ນໄດ້ຖືກສ້າງຂຶ້ນໃນເມື່ອກ່ອນ (ການນໍາໃຊ້ທາງເລືອກ -c) ຈາກລະຫັດແຫຼ່ງ VHDL ໃນລະຫວ່າງການແຍກຕ່າງຫາກ
ຂັ້ນຕອນການລວບລວມ.
OPTIONS
-L VHDLLIB
ເສັ້ນທາງໄປຫາລະບົບຮາກຫ້ອງສະໝຸດ VHDL. ພາຍໃນໄດເລກະທໍລີນີ້ compiler ຊອກຫາ
ໄຟລ໌ທີ່ມີຊື່ v2cc.libs. ໄຟລ໌ແຜນທີ່ v2cc.libs ແປຊື່ຫ້ອງສະໝຸດ
ໄປຫາໄດເລກະທໍລີ. ໃຫ້ສັງເກດວ່າຫຼາຍກວ່າຫນຶ່ງ VHDLLIB ອາດຈະສະຫນອງໃຫ້.
-g ເພີ່ມຂໍ້ມູນການດີບັ໊ກໃຫ້ກັບຕົວປະຕິບັດການ. ໃນລາຍລະອຽດ, ທາງເລືອກນີ້ເຊື່ອມໂຍງກັບ
ສ້າງລະຫັດເຄື່ອງໃຫ້ກັບສາຍທີ່ສອດຄ້ອງກັນໃນໄຟລ໌ແຫຼ່ງ VHDL.
-G ຕື່ມຂໍ້ມູນການດີບັ໊ກໃຫ້ກັບຕົວປະຕິບັດການແຕ່ບໍ່ໄດ້ເຊື່ອມໂຍງລະຫັດເຄື່ອງກັບ
ສາຍແຫຼ່ງ VHDL. ຕົວເລືອກນີ້ໄດ້ຖືກນໍາໃຊ້ໃນຕົວຈິງເພື່ອແກ້ໄຂລະຫັດ C++ ທີ່ສ້າງຂຶ້ນ.
-c ບໍ່ສ້າງ simulator ປະຕິບັດໄດ້. ການນໍາໃຊ້ທາງເລືອກນີ້, compiler ໄດ້ແປ
ແຫຼ່ງ VHDL ເຂົ້າໄປໃນ executables ແລະລວບລວມໃຫ້ເຂົາເຈົ້າເຂົ້າໄປໃນລະຫັດວັດຖຸແຕ່ບໍ່ໄດ້
ສ້າງ simulator ສຸດທ້າຍປະຕິບັດໄດ້. ທາງເລືອກນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະໃນການລວບລວມ
ແພັກເກດ VHDL.
-l LIBNAME
ເຊື່ອມໂຍງແຫຼ່ງລະຫັດ VHDL ກັບຫ້ອງສະໝຸດ VHDL LIBNAME. ຕາມຄ່າເລີ່ມຕົ້ນຂອງຊື່ຫ້ອງສະໝຸດ
ເຮັດວຽກຖືກໃຊ້. ທາງເລືອກນີ້ແມ່ນມີຄວາມສໍາຄັນໂດຍສະເພາະຖ້າອົງປະກອບ VHDL ຈາກຫຼາຍໆອັນ
ຫ້ອງສະຫມຸດ VHDL ຈະຖືກສ້າງເຂົ້າໄປໃນ simulator. ໃຫ້ສັງເກດວ່າໃນຄໍາສັ່ງທີ່ຈະ
ສົບຜົນສໍາເລັດການນໍາໃຊ້ອົງປະກອບ VHDL ຈາກອື່ນກ່ວາຫ້ອງສະຫມຸດທີ່ເຮັດວຽກໃນປະຈຸບັນ,
ໄຟລ໌ VHDL ທີ່ສອດຄ້ອງກັນຈະຕ້ອງພົບໂດຍ compiler ໂດຍໃຊ້ກົນໄກ
ອະທິບາຍໄວ້ໃນ v2cc.libs. ນອກຈາກນັ້ນ, ອົງປະກອບຕ້ອງໄດ້ຮັບການລວບລວມຕາມຄວາມເຫມາະສົມ
-l ທາງເລືອກ LIBNAME.
--relaxed-component-visibility
ອະນຸຍາດໃຫ້ການຜູກມັດເລີ່ມຕົ້ນທີ່ເບິ່ງບໍ່ເຫັນຈາກ WORK.
--libieee
ເພີ່ມໄຟລ໌ຫ້ອງສະໝຸດມາດຕະຖານ IEEE ເຂົ້າໃນການຈຳລອງທີ່ສາມາດປະຕິບັດໄດ້.
ENVIRONMENT ຄວາມຮັບຜິດຊອບ
V2CC_LIBRARY_PATH
ຕົວແປ V2CC_LIBRARY_PATH ປະກອບດ້ວຍ ":" ຊື່ໄຟລ໌ທີ່ແຍກອອກ. ນອກຈາກນັ້ນ
ຕົວປ່ຽນແປງສະພາບແວດລ້ອມ, ທ່ານສາມາດນໍາໃຊ້ "-L libdir" ທາງເລືອກເສັ້ນຄໍາສັ່ງກັບ
v2cc. ໄດເລກະທໍລີທີ່ລະບຸດ້ວຍ "-L" ຖືກເພີ່ມຢູ່ທາງຫນ້າຂອງລາຍການທີ່ລະບຸໄວ້
ໂດຍ V2CC_LIBRARY_PATH. ໃນເສັ້ນທາງຫ້ອງສະຫມຸດສຸດທ້າຍ, ພວກເຂົາເຈົ້າປາກົດຢູ່ໃນລໍາດັບດຽວກັນກັບ
ຢູ່ໃນເສັ້ນຄໍາສັ່ງ.
ສະ ໜັບ ສະ ໜູນ VHDL SUBSET
ໃນປັດຈຸບັນ, FreeHDL ບໍ່ຮອງຮັບມາດຕະຖານ VHDL'93 ທັງໝົດ. ຕໍ່ໄປນີ້ບໍ່ຄົບຖ້ວນ
ບັນຊີລາຍຊື່ໃຫ້ພາບລວມກ່ຽວກັບສິ່ງທີ່ບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນໃນປັດຈຸບັນ:
- ສະມາຄົມສ່ວນບຸກຄົນຂອງແບບຟອມຂອງປະເພດປະສົມແມ່ນບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນ.
- ບໍ່ຮອງຮັບຕົວແປທີ່ແບ່ງປັນ.
- ຄຸນລັກສະນະການເຮັດທຸລະກໍາ, ງຽບ, ຄວາມຫມັ້ນຄົງແລະການຊັກຊ້າແມ່ນບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນ.
- ບໍ່ຮອງຮັບຄຸນສົມບັດທີ່ກຳນົດໄວ້ໂດຍຜູ້ໃຊ້.
- ບໍ່ຮອງຮັບກຸ່ມ.
- ບໍ່ຮອງຮັບການມອບໝາຍສັນຍານປ້ອງກັນ.
- ບໍ່ຮອງຮັບການຕັ້ງຄ່າ.
- ໃນປັດຈຸບັນ, ຄົນຂັບບໍ່ສາມາດປິດໄດ້.
ຕົວຢ່າງ
ການນໍາໃຊ້
gvhdl -c adder.vhdl
ເພື່ອສ້າງໄຟລ໌ວັດຖຸສໍາລັບ adder.vhdl. ໃຫ້ສັງເກດວ່າ adder.vhdl ອາດຈະມີ VHDL ຫຼາຍອັນ
ແບບຈໍາລອງ.
gvhdl adder.vhdl
ຈະສ້າງ simulator ສໍາລັບ ສຸດທ້າຍ ຮູບແບບ VHDL ພົບເຫັນຢູ່ໃນ adder.vhdl. ຢ່າງໃດກໍຕາມ, ໃນນີ້
ກໍລະນີ, ອົງປະກອບ VHDL ທັງຫມົດທີ່ພື້ນທີ່ທີ່ຕ້ອງການໃນການກໍ່ສ້າງ simulator ຕ້ອງໄດ້ຮັບການລວມເຂົ້າໃນ
ໄຟລ໌ແຫຼ່ງ VHDL.
gvhdl top.vhdl adder.o --libieee
ສ້າງ simulator ສໍາລັບຕົວແບບ VHDL ສຸດທ້າຍທີ່ພົບເຫັນຢູ່ໃນ top.vhdl ໂດຍການລວບລວມຕົວແບບທັງຫມົດໃນ
top.vhdl ແລະການເຊື່ອມຕໍ່ (ທີ່ສ້າງຂຶ້ນກ່ອນຫນ້ານີ້) adder.o ໄຟລ໌ວັດຖຸແລະມາດຕະຖານ IEEE
ຫ້ອງສະຫມຸດເພື່ອປະຕິບັດໄດ້.
gvhdl -c -l mylib adder.vhdl
ຈະສ້າງໄຟລ໌ວັດຖຸລວມທັງອົງປະກອບທັງຫມົດທີ່ສະຫນອງໃຫ້ຢູ່ໃນ adder.vhdl. ຢ່າງໃດກໍຕາມ, ໃນ
ກໍລະນີນີ້ອົງປະກອບຈະຖືກເຊື່ອມໂຍງກັບຫ້ອງສະຫມຸດ mylib ແທນທີ່ຈະເປັນຄ່າເລີ່ມຕົ້ນ
ຊື່ຫ້ອງສະຫມຸດເຮັດວຽກ. ໃຫ້ສັງເກດວ່າທາງເລືອກ -l ມີຜົນກະທົບພຽງແຕ່ລະຫັດແຫຼ່ງ C ++ ທີ່ສ້າງຂຶ້ນແຕ່
ບໍ່ໄດ້ປ່ຽນແປງສະຖານທີ່ທີ່ໄຟລ໌ວັດຖຸຫຼືປະຕິບັດໄດ້ຖືກເກັບຮັກສາໄວ້.
ງ່າຍດາຍ ສາມາດ
ຫຼັງຈາກ simulator ໄດ້ເລີ່ມຕົ້ນແລ້ວ, ບົດສະຫຼຸບສັ້ນໆຂອງຄໍາສັ່ງທີ່ມີຢູ່ແມ່ນພິມອອກ
ໄປທີ່ຫນ້າຈໍ:
ຄ : execute cycles = ປະຕິບັດ ຮອບວຽນຈໍາລອງ
n : ຕໍ່ໄປ = ປະຕິບັດວົງຈອນການຈໍາລອງຕໍ່ໄປ
q : quit = ອອກຈາກ simulation
r : run = ປະຕິບັດການຈໍາລອງສໍາລັບ
d : dump = ສັນຍານ dump
doff : dump off = ຢຸດສັນຍານການຖິ້ມຂີ້ເຫຍື້ອ
don : dump on = ສືບຕໍ່ສັນຍານ dumping
s : show = ສະແດງຄ່າສັນຍານ
dv : dump var = ຖິ້ມສັນຍານຈາກລາຍການສັນຍານ
ds : dump show = ສະແດງລາຍຊື່ສັນຍານທີ່ຖືກຖິ້ມ
nds : number show = ສະແດງຈໍານວນສັນຍານທີ່ຖືກຖິ້ມ
dc [-f ] [-ທ ] [-cfg ] [-q]
: ຕັ້ງຄ່າຂະບວນການ dump
ໃຫ້ສັງເກດວ່າສັນຍານຖືກຖິ້ມເຂົ້າໄປໃນໄຟລ໌ (ຊື່ໄຟລ໌ເລີ່ມຕົ້ນແມ່ນ "wave.dmp") ໃນຮູບແບບ VCD.
ຮູບແບບໄຟລ໌ນີ້ຄວນຈະໄດ້ຮັບການຍອມຮັບໂດຍແຕ່ລະ VCD waveform viewer. ຊື່ໄຟລ໌ຖືກຕັ້ງເປັນ
"wave.dmp" ແຕ່ອາດຈະຖືກປ່ຽນແປງໂດຍໃຊ້ "dc -f ". ຢ່າງໃດກໍຕາມ, ໃຫ້ແນ່ໃຈວ່າຈະປະຕິບັດ
"dc -f ... " ກ່ອນທີ່ຈະປະຕິບັດ "d".
ຕົວ ຈຳ ລອງ ຄໍາສັ່ງ LINE OPTIONS
ການຈໍາລອງສາມາດຄວບຄຸມໄດ້ໂດຍຜ່ານພາລາມິເຕີເສັ້ນຄໍາສັ່ງ '-cmd "cmd1; cmd2; ... " 'ບ່ອນທີ່
'cmd1', 'cmd2', ... ແມ່ນຄຳສັ່ງຈຳລອງທີ່ໄດ້ອະທິບາຍໄວ້ໃນພາກກ່ອນໜ້າ. ຫມາຍເຫດ
ທີ່ແຕ່ລະຄໍາສັ່ງຕ້ອງຖືກແຍກອອກດ້ວຍ ';'. ຕົວຢ່າງ, ການປະຕິບັດ
./top -cmd "d;run 1000 ns;q;"
ຈະເລີ່ມໂຄງການ simulation 'ເທິງ', dump ສັນຍານທັງຫມົດແລະດໍາເນີນການ simulation ສໍາລັບ 1000 ns.
ສຸດທ້າຍ, ການຈໍາລອງແມ່ນສິ້ນສຸດລົງ. ຕົວຈິງແລ້ວ, ຄໍາສັ່ງສຸດທ້າຍ 'q;' ເປັນທາງເລືອກທີ່ເປັນ
simulator ອັດຕະໂນມັດສິ້ນສຸດລົງທັນທີທີ່ຄໍາສັ່ງສຸດທ້າຍໄດ້ຖືກປະຕິບັດ.
ໃຊ້ gvhdl ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net