คำถามติดแท็ก verilog

Verilog เป็นภาษาอธิบายฮาร์ดแวร์ (HDL) ที่ใช้ในการสร้างแบบจำลองระบบอิเล็กทรอนิกส์ มักใช้ในการออกแบบการตรวจสอบและการใช้งานชิปลอจิกดิจิทัล โปรดติดแท็กด้วย [fpga], [asic] หรือ [การยืนยัน] ตามความเหมาะสม คำตอบสำหรับคำถาม Verilog จำนวนมากมีเป้าหมายเฉพาะ

11
VHDL หรือ Verilog? [ปิด]
VHDLและVerilogเป็น HDLs ของวัน อะไรคือข้อดีของทั้งสำหรับคนที่ไม่มีประสบการณ์กับ HDL เลย?
94 vhdl  verilog  hdl 

2
การออกแบบ ASIC แตกต่างจากการสังเคราะห์ FPGA HDL อย่างไร
ฉันเคยมีประสบการณ์กับชุดเครื่องมือ FPGA / HDL เช่น Xilinx ISE, Lattice Diamond เป็นต้นขั้นตอนการทำงานทั่วไปคือการเขียน Verilog / VHDL การจำลองการทดสอบและการเขียนโปรแกรม FPGA ฉันได้ยินคนสองคนกล่าวว่าการออกแบบ ASIC นั้นแตกต่างกันมาก ชุดเครื่องมือใดที่ใช้สำหรับ ASIC สองประเภทหลักระดับ ASIC ระดับประตูและระดับทรานซิสเตอร์ ASIC ฉันได้ดูเครื่องมือการสังเคราะห์ระดับสูงเช่น Catapult C และ Cadence C ถึง Silicon แต่ฉันยังไม่เคยลองเลย คุณสามารถอธิบายเครื่องมือชนิดต่าง ๆ ที่มีในฟิลด์ ASIC / FPGA ที่สามารถเปลี่ยน / เร่งเวิร์กโฟลว์ HDL ทั่วไปได้เร็วขึ้นหรือไม่
42 fpga  vhdl  verilog  software  asic 

9
การออกแบบ FPGA สามารถเป็นแบบอะซิงโครนัสได้หรือไม่
เรามีหลักสูตร FPGA / Verilog สั้น ๆ ที่มหาวิทยาลัย (5 ปีที่แล้ว) และเรามักใช้นาฬิกาทุกที่ ตอนนี้ฉันเริ่มต้นด้วย FPGA อีกครั้งในฐานะงานอดิเรกและฉันอดไม่ได้ที่จะสงสัยเกี่ยวกับนาฬิกาเหล่านั้น พวกเขาจำเป็นอย่างยิ่งหรือการออกแบบที่ใช้ FPGA นั้นไม่สามารถซิงโครนัสได้อย่างสมบูรณ์หรือไม่? เราสามารถสร้างตรรกะที่ซับซ้อนและมีสิ่งกระเพื่อมผ่านมันเร็วที่สุดเท่าที่จะทำได้หรือไม่? ฉันรู้ว่ามีจำนวนมาก gotchas กับเรื่องนี้เช่นรู้ว่าเมื่อสัญญาณมีการแพร่กระจายผ่านทุกส่วนของวงจรและเอาท์พุทมีความเสถียร ที่อยู่ข้างจุด ไม่ใช่ว่าฉันต้องการสร้างการออกแบบที่ไม่ตรงกันทั้งหมด แต่เพื่อปรับปรุงความเข้าใจในความสามารถของฉัน สำหรับตาของฉันเริ่มต้นปรากฏว่าสิ่งก่อสร้างเพียงอย่างเดียวที่ต้องใช้นาฬิกาเป็นอย่างregมากและความเข้าใจของฉันก็คือ FPGA ทั่วไป (เช่น Cyclone II) จะมีฟลิป - ฟล็อปแบบ pre-wired ไปยังสัญญาณนาฬิกาเฉพาะ ถูกต้องหรือไม่ มีนาฬิกาโดยนัยอื่น ๆ เช่นนี้หรือไม่และสามารถขับเคลื่อนด้วยการออกแบบได้หรือไม่?
39 fpga  verilog 

7
การปรับใช้ซีพียูที่อ่านได้และให้ความรู้ใน HDL
คุณสามารถแนะนำการใช้งาน CPU ใน VHDL หรือ Verilog ที่อ่านและศึกษาได้หรือไม่? ควรมีเอกสารที่ดี ป.ล. ฉันรู้ว่าฉันสามารถดูได้opencoresแต่ฉันสนใจเป็นพิเศษในสิ่งที่ผู้คนได้ดูและพบว่าน่าสนใจ PS2 ขออภัยเกี่ยวกับแท็ก sucky แต่ในฐานะผู้ใช้ใหม่ฉันไม่สามารถสร้างใหม่ได้


7
ฉันจะเรียนรู้ HDL ได้อย่างไร
ฉันมีหลักสูตรในการออกแบบดิจิทัลในภาคการศึกษานี้และรักมัน ตอนนี้ฉันรู้แล้วว่างานส่วนใหญ่ในระบบสมองกลฝังตัวและการออกแบบดิจิตัลนั้นทำบนเครื่องจำลองคอมพิวเตอร์ก่อนแล้วจึงนำไปใช้งานโดยใช้ฮาร์ดแวร์ ดังนั้นฉันสงสัยว่าฉันควรเรียนรู้ HDL อย่างไร ฉันมีคำถามสองสามข้อ อะไร? ฉันไม่รู้ว่ามาตรฐานคืออะไร แต่ต้องการที่จะเรียนรู้ซึ่งง่ายต่อการรับ ฉันเข้าใจว่า HDL ส่วนใหญ่ได้รับการออกแบบให้ใช้กับ FPGAs ฉันไม่ได้ทำอย่างนั้น อย่างไร? ฉันควรทำตามตำราเรียนด้วยตัวอย่างที่เป็นอิสระหรือฉันควรเริ่มดำเนินการในโครงการเช่นการนำระบบเล็ก ๆ มาใช้ (อาจเป็นสิ่งที่เหมือนกับการควบคุมสัญญาณไฟจราจร) ที่ไหน? ฉันจะรับทรัพยากรได้ที่ไหน
24 simulation  vhdl  verilog  hdl 

6
โปรโตคอลการ จำกัด / การซิงโครไนซ์เทคนิคแบบอนุกรม
เนื่องจากการสื่อสารแบบซีเรียลแบบอะซิงโครนัสแพร่กระจายอย่างกว้างขวางในอุปกรณ์อิเล็กทรอนิกส์ทุกวันนี้ฉันเชื่อว่าพวกเราหลายคนได้พบคำถามเช่นนี้เป็นครั้งคราว พิจารณาอุปกรณ์อิเล็กทรอนิกส์Dและคอมพิวเตอร์PCที่เชื่อมต่อกับสายอนุกรม (RS-232 หรือคล้ายกัน) และจำเป็นต้องมีการแลกเปลี่ยนข้อมูลอย่างต่อเนื่อง Ie PCกำลังส่งเฟรมคำสั่งแต่ละเฟรมX msและDกำลังตอบกลับด้วยรายงานสถานะ / เฟรม telemetry แต่ละรายการY ms(สามารถส่งรายงานเป็นการตอบสนองต่อคำขอหรือเป็นอิสระ - ไม่สำคัญเลยที่นี่) กรอบการสื่อสารสามารถมีข้อมูลไบนารีใด ๆ โดยพลการ สมมติว่าเฟรมการสื่อสารเป็นแพ็กเก็ตที่มีความยาวคงที่ ปัญหา: เนื่องจากโปรโตคอลมีความต่อเนื่องด้านการรับอาจหลุดการซิงโครไนซ์หรือเพียงแค่ "เข้าร่วม" ที่อยู่ตรงกลางของเฟรมที่ส่งต่อเนื่องดังนั้นมันจะไม่รู้ว่าจุดเริ่มต้นของเฟรม (SOF) นั้นอยู่ที่ไหน ข้อมูลมีความหมายที่แตกต่างกันไปตามตำแหน่งของ SOF ข้อมูลที่ได้รับจะเสียหายและอาจเกิดขึ้นตลอดไป ทางออกที่ต้องการ รูปแบบการลด / ประสานที่เชื่อถือได้ในการตรวจจับ SOF ด้วยเวลาการกู้คืนสั้น ๆ (เช่นไม่ควรใช้เวลามากกว่านั้นพูด 1 เฟรมเพื่อซิงโครไนซ์อีกครั้ง) เทคนิคที่มีอยู่ฉันรู้ (และใช้บางส่วน) ของ: 1) ส่วนหัว / การตรวจสอบ - SOF เป็นค่าไบต์ที่กำหนดไว้ล่วงหน้า ตรวจสอบผลรวมในตอนท้ายของเฟรม จุดเด่น:เรียบง่าย …
24 serial  communication  protocol  brushless-dc-motor  hall-effect  hdd  scr  flipflop  state-machines  pic  c  uart  gps  arduino  gsm  microcontroller  can  resonance  memory  microprocessor  verilog  modelsim  transistors  relay  voltage-regulator  switch-mode-power-supply  resistance  bluetooth  emc  fcc  microcontroller  atmel  flash  microcontroller  pic  c  stm32  interrupts  freertos  oscilloscope  arduino  esp8266  pcb-assembly  microcontroller  uart  level  arduino  transistors  amplifier  audio  transistors  diodes  spice  ltspice  schmitt-trigger  voltage  digital-logic  microprocessor  clock-speed  overclocking  filter  passive-networks  arduino  mosfet  control  12v  switching  temperature  light  luminous-flux  photometry  circuit-analysis  integrated-circuit  memory  pwm  simulation  behavioral-source  usb  serial  rs232  converter  diy  energia  diodes  7segmentdisplay  keypad  pcb-design  schematics  fuses  fuse-holders  radio  transmitter  power-supply  voltage  multimeter  tools  control  servo  avr  adc  uc3  identification  wire  port  not-gate  dc-motor  microcontroller  c  spi  voltage-regulator  microcontroller  sensor  c  i2c  conversion  microcontroller  low-battery  arduino  resistors  voltage-divider  lipo  pic  microchip  gpio  remappable-pins  peripheral-pin-select  soldering  flux  cleaning  sampling  filter  noise  computers  interference  power-supply  switch-mode-power-supply  efficiency  lm78xx 

5
เหตุใดสลักจึงอนุมานไม่ดี
คอมไพเลอร์ของฉันบ่นเกี่ยวกับ latches ที่สรุปในลูป combinatorial ของฉัน ( always @(*)ใน Verilog) ฉันยังได้รับการบอกด้วยว่าควรหลีกเลี่ยงการสลักสลักที่อนุมาน มีอะไรผิดปกติกับสลักที่สรุป? พวกเขาทำให้ลูป combinatorial ง่ายต่อการเขียน
22 verilog  hdl  latch 

7
ความแตกต่างระหว่างการทดสอบและการตรวจสอบคืออะไร?
หนังสือเรียนทุกเล่มที่ฉันเห็นทำให้เป็นเรื่องใหญ่ว่าการทดสอบและการตรวจสอบเป็นแนวคิดที่แตกต่างกันสองประการ ยังไม่มีใครในพวกเขาให้ความแตกต่างที่ชัดเจน (หรือชัดเจนพอที่ฉันในที่สุด) เพื่อให้บริบทบางอย่างฉันสนใจในการตรวจสอบการออกแบบฮาร์ดแวร์ดิจิทัลโดยใช้ภาษาการออกแบบฮาร์ดแวร์ (HDL) ฉันเคยเห็นคำอธิบายบางอย่างที่หันไปใช้ความแตกต่างที่ "จับต้องได้" หรือ "จับต้องได้": ถ้ามันเกี่ยวกับอุปกรณ์ที่ผลิตแล้วนั่นเป็นการทดสอบ นี่เป็นเรื่องราวทั้งหมดหรือไม่? ถ้าเป็นเช่นนั้นทำไมคำว่า "test" ถึงเกิดขึ้นบ่อยครั้งในการตรวจสอบ (โดยเฉพาะอย่างยิ่งในการตรวจสอบการทำงานเราพูดถึง testcase, testbenches, DUT (อุปกรณ์ภายใต้การทดสอบ), การทดสอบโดยตรง, การทดสอบแบบสุ่ม ฯลฯ )

3
ความแตกต่างระหว่าง Verilog การบล็อกและการบล็อกที่ไม่ใช่การบล็อก
ฉันกำลังอ่านหน้านี้http://www.asic-world.com/verilog/verilog_one_day3.htmlเมื่อฉันเจอสิ่งต่อไปนี้: โดยปกติเราต้องรีเซ็ต flip-flop ดังนั้นทุกครั้งที่นาฬิกาทำการเปลี่ยนจาก 0 เป็น 1 (posedge) เราตรวจสอบว่าการรีเซ็ตถูกยืนยัน (การซิงโครนัสรีเซ็ต) จากนั้นเราจะใช้ตรรกะปกติ หากเรามองอย่างใกล้ชิดเราจะเห็นว่าในกรณีของตรรกะเชิงผสมเรามี "=" สำหรับการมอบหมายและบล็อกตามลำดับเรามีตัวดำเนินการ "<=" ก็คือ "=" กำลังบล็อกการกำหนดและ "<=" เป็นการกำหนดการบล็อกที่ไม่ใช่ "=" เรียกใช้งานโค้ดตามลำดับภายในจุดเริ่มต้น / สิ้นสุดในขณะที่การบล็อก "<=" ทำงานแบบขนาน ฉันค่อนข้างแน่ใจว่าการมอบหมายที่ไม่ใช่การบล็อกเป็นลำดับในขณะที่การบล็อกการมอบหมายนั้นขนานกัน ท้ายที่สุดคุณสามารถทำการบล็อกการมอบหมายด้วยข้อความสั่งมอบหมายนอกบล็อกเสมอและสิ่งเหล่านั้นทั้งหมดทำงานแบบขนาน นี่เป็นความผิดพลาดหรือพฤติกรรมที่แตกต่างกันในบล็อคตลอดเวลา? และถ้าพฤติกรรมแตกต่างกันในบล็อกตลอดเวลาการมอบหมายที่ไม่บล็อกสามารถทำได้นอกบล็อกเสมอได้หรือไม่
15 verilog 

3
สิ่งที่ผู้ประกอบการนี้เรียกว่า“ +:” ใน verilog
ฉันจะผ่านกรณีทดสอบ verilog และพบคำสั่ง assign XYZ = PQR_AR[44*8 +: 64]; ตัวดำเนินการ "+:" รู้จักกันในชื่ออะไร ฉันพยายามค้นหาสิ่งนี้บน google แต่ไม่ได้รับคำตอบที่เกี่ยวข้อง
14 verilog 

4
BJT ทรานซิสเตอร์ทำงานอย่างไรในสภาวะอิ่มตัว?
นี่คือสิ่งที่ฉันรู้เกี่ยวกับ NPN BJTs (ทรานซิสเตอร์แบบสองขั้วทางแยก): ปัจจุบัน Base-Emitter ขยาย HFE ครั้งที่ Collector-Emitter ดังนั้น Ice = Ibe * HFE Vbeคือแรงดันไฟฟ้าระหว่าง Base-Emitter และเช่นเดียวกับ diode ใด ๆ มักจะอยู่ที่ประมาณ 0,65V Vecแม้ว่าฉันจะจำไม่ได้ ถ้าVbeต่ำกว่าเกณฑ์ขั้นต่ำสุดทรานซิสเตอร์จะเปิดขึ้นและไม่มีกระแสไฟผ่านหน้าสัมผัสใด ๆ (โอเคอาจจะมีกระแสรั่วไหลเล็กน้อย แต่ก็ไม่เกี่ยวข้องกัน) แต่ฉันยังมีคำถาม: ทรานซิสเตอร์ทำงานอย่างไรเมื่ออิ่มตัว ? เป็นไปได้หรือไม่ที่จะให้ทรานซิสเตอร์อยู่ในสถานะเปิดภายใต้เงื่อนไขอื่นที่ไม่ใช่Vbeต่ำกว่าขีด จำกัด ? นอกจากนี้อย่าลังเลที่จะชี้ให้เห็นข้อผิดพลาดใด ๆ ที่ฉันทำในคำถามนี้ คำถามที่เกี่ยวข้อง: ฉันไม่สนใจว่าทรานซิสเตอร์ทำงานอย่างไรฉันจะทำให้ทรานซิสเตอร์ทำงานได้อย่างไร

5
อะไรจะทำให้ฉันเลือก Verilog หรือ VHDL มากกว่าการออกแบบวงจรบน CPLD หรือ FPGA
ฉันไม่มีพื้นฐานด้านตรรกะที่ตั้งโปรแกรมได้ฉันใช้ไมโครคอนโทรลเลอร์ส่วนใหญ่ในโครงการของฉัน แต่ไม่นานมานี้ฉันต้องการทำงานกับวิดีโอและไมโครคอนโทรลเลอร์ช้าเกินไปสำหรับสิ่งที่ฉันต้องการดังนั้นฉันจึงเริ่มเล่นกับ CPLD ฉันสามารถรับผลลัพธ์ที่ดีกับ CPLD โดยใช้การออกแบบวงจรเท่านั้น แต่เมื่อค้นหาข้อมูลเกี่ยวกับ CPLD ฉันพบตัวอย่างมากมายโดยใช้ VHDL และ Verilog ฉันอยากรู้ว่าสิ่งใดที่ทำให้ฉันต้องการกำหนดอุปกรณ์ของฉันเป็นหนึ่งในภาษาเหล่านี้ พวกเขาทำอะไรได้บ้างที่การออกแบบวงจรไม่สามารถทำได้? พวกเขาส่วนใหญ่ใช้สำหรับฟังก์ชั่น? จนถึงตอนนี้ฉันใช้ CPLD เพียงอย่างเดียวการออกแบบ FPGAs มีประโยชน์มากกว่า CPLD จากการใช้ภาษาเหล่านี้หรือไม่

1
Verilog: XOR สัญญาณทั้งหมดของเวกเตอร์เข้าด้วยกัน
สมมติว่าฉันได้เวกเตอร์ที่มีwire large_bus[63:0]ความกว้าง 64 ฉันจะแฮคเกอร์แต่ละสัญญาณด้วยกันได้อย่างไรโดยไม่ต้องเขียนออกทั้งหมด: assign XOR_value = large_bus[0] ^ large_bus[1] ^ ... ^ large_bus[63] ? localparamฉันสนใจโดยเฉพาะอย่างยิ่งในการทำเช่นนี้สำหรับเวกเตอร์ที่กว้างถูกกำหนดโดย
13 verilog 

6
แรงจูงใจในการใช้ Verilog หรือ VHDL มากกว่า C คืออะไร
ฉันมาจากพื้นหลังการเขียนโปรแกรมและไม่ยุ่งกับฮาร์ดแวร์หรือเฟิร์มแวร์มากเกินไป (อย่างน้อยอุปกรณ์อิเล็กทรอนิกส์และ Arduino) อะไรคือแรงจูงใจในการใช้ภาษาคำอธิบายฮาร์ดแวร์ (HDL) เช่น Verilog และ VHDL เหนือภาษาการเขียนโปรแกรมเช่น C หรือแอสเซมบลีบางส่วน ปัญหานี้เป็นเรื่องของการเลือกหรือไม่? ฉันอ่านว่าฮาร์ดแวร์ซึ่งเฟิร์มแวร์เขียนใน HDL นั้นมีข้อได้เปรียบที่ชัดเจนในการรันคำสั่งแบบขนาน อย่างไรก็ตามฉันรู้สึกประหลาดใจที่เห็นการอภิปรายแสดงความสงสัยว่าจะเขียนเฟิร์มแวร์ใน C หรือ Assembly (แอสเซมบลีที่เหมาะสมถ้าคุณไม่จำเป็นต้องมี CPU?) แต่ฉันสรุปว่ามันเป็นตัวเลือก ดังนั้นฉันมีคำถามสองสามข้อ (อย่าลังเลที่จะอธิบายอะไร): เฟิร์มแวร์สามารถเขียนได้ทั้งใน HDL หรือในภาษาโปรแกรมซอฟต์แวร์หรือเป็นอีกวิธีหนึ่งในการทำภารกิจเดียวกัน ฉันชอบที่จะเป็นตัวอย่างในโลกแห่งความจริง ข้อ จำกัด ใดบ้างที่เกิดขึ้นจากตัวเลือกแต่ละตัว ฉันรู้ว่าการใช้เฟิร์มแวร์โดยทั่วไปของซอฟต์แวร์นั้นอยู่ในตัวเร่งความเร็วฮาร์ดแวร์ (เช่น GPU, อะแดปเตอร์เครือข่าย, ตัวเร่งความเร็ว SSL ฯลฯ ) ตามที่ฉันเข้าใจแล้วการเร่งความเร็วนี้ไม่จำเป็นเสมอไป แต่แนะนำเท่านั้น (เช่นในกรณีของ SSL และการเร่งความเร็วของอัลกอริทึมที่ซับซ้อน) สามารถเลือกระหว่างเฟิร์มแวร์และซอฟต์แวร์ในทุกกรณีหรือไม่? ถ้าไม่ฉันยินดีที่จะให้กรณีที่เฟิร์มแวร์ที่เหมาะสมอย่างชัดเจนและชัดเจน ฉันอ่านแล้วว่าเฟิร์มแวร์ส่วนใหญ่เขียนบน ROM หรือแฟลช …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.