vhdl assign specific bit of std_logic_vector with index failed -


मैंने ऐसा करने की कोशिश की

  पुस्तकालय आईईईई; IEEE.STD_LOGIC_1164.ALL का उपयोग करें; IEEE.STD_LOGIC_ARITH.ALL का उपयोग करें; IEEE.STD_LOGIC_UNSIGNED.ALL का उपयोग करें; इकाई mux_8to1 पोर्ट (Y: STD_LOGIC_VECTOR (0 से 7) में; एस: STD_LOGIC_VECTOR में (2 से डाउन 0); एफ: बाहर STD_LOGIC); अंत mux_8to1; वास्तुकला mux_8to1 का व्यवहार शुरू होता है: i से 0 से 7 में उत्पन्न एफ & lt; = y (i) जब S = i और '0'; अंत रन बनाने; अंत व्यवहार;  

लेकिन Xilinx मुझे एक त्रुटि रिपोर्ट

  त्रुटि: Xst: 528 - इकाई में मल्टी-स्रोत & lt; mux_8to1 & gt; सिग्नल पर & lt; F & gt;  

क्या यह इनपुट इनपुट या कहीं पर इस्तेमाल नहीं किया जा सकता है?

संश्लेषण उपकरण उत्पन्न पाश को अनवरोधित करेगा, जिसके परिणामस्वरूप:

  F & lt; = Y (0) जब S = 0 else '0'; एफ एंड एलटी; = वाई (1) जब एस = 1 और '0'; ... एफ एंड एलटी; = वाई (7) जब एस = 7 और '0';  

आप देख सकते हैं कि एफ के पास कई ड्राइवर हैं, जो वास्तव में Xilinx संश्लेषण के बारे में शिकायत करता है।

गैर-मानक वीएचडीएल पैकेज std_logic_unsigned का उपयोग करते हुए mux, को चलाने के लिए: के लिए ... के साथ:

  f  

लूप के साथ कैसे करें, यह कोड है:

  प्रक्रिया (वाई, एस) शुरू होती है एफ & lt; = 'X' ; - यदि 0 से 7 लूप में लूप में कोई परिणामी चालक नहीं होता है तो S से बचने के लिए डिफॉल्ट यदि S = I तो एफ & lt; = y (i); अगर अंत; अंत लूप; प्रक्रिया समाप्त;  

जिम लुईस टिप्पणी से प्रेरणा के अनुसार, मानक वीएचडीएल-2002 पैकेज संख्यात्मक_स्टडी के साथ:

  पुस्तकालय आईईईईई का उपयोग कर कोड; का प्रयोग करें ieee.std_logic_1164.all; का प्रयोग करें ieeee.numeric_std.all;  

संक्षिप्त रूप में है:

  F & lt; = y (to_integer (अहस्ताक्षरित (एस)));  

और पाश का उपयोग:

  प्रक्रिया (वाई, एस) शुरू होती है एफ & lt; = 'X'; - यदि बिना किसी अहस्ताक्षरित (एस) = मैं तो एफ एंड एलटी; = वाई (आई); 0 से 7 पाश में लूप में कोई भी परिणामी चालक नहीं होने पर डिफ़ॉल्ट से बचने के लिए डिफ़ॉल्ट; अगर अंत; अंत लूप; प्रक्रिया समाप्त;  

Comments

Popular posts from this blog

sqlite3 - UPDATE a table from the SELECT of another one -

c# - Showing a SelectedItem's Property -

javascript - Render HTML after each iteration in loop -