ভিএইচডিএল: বা ভেক্টরের বিটগুলি একসাথে


11

আমি বা ভেক্টরের বিটগুলি একসাথে করতে চাই। সুতরাং বলুন যে আমার কাছে একটি ভেক্টর আছে example(23 downto 0)এবং আমি সমস্ত বিটগুলি অন্য ভেক্টরটিতে বা করতে চাই, এটি করার কোনও উপায় আছে যা এতে জড়িত না example(0) or example(1) or ...example(23)?


আপনি কি পরিবর্তে শূন্য তুলনা করতে পারেন? একই প্রভাব হবে।
ডেভিড

ডেভিডের মন্তব্যে (32 বিট ভেক্টর ব্যবহার করে) প্রসারিত করার জন্য: or_result <= '0' when input=X"00000000" else '1';প্রশ্নাবলীতে ভেক্টরের দৈর্ঘ্যের সাথে মিলের জন্য শূন্যের সংখ্যা পরিবর্তন করুন।

লজিক হ্রাস vhdl 2008 সালে পাওয়া যায়, দেখতে stackoverflow.com/questions/20296276/...
Moberg

1
এছাড়াও আপনি আরও সাধারণ উপায়ে ব্যবহার করতে পারেন:result <= '0' when (example=(example'range=>'0')) else '1';
মিগুয়েল রিস্কো

উত্তর:



5

ভেরিলোগের একটি সুবিধাজনক "হ্রাস অপারেটর" রয়েছে যা আপনি যা চেয়েছিলেন ঠিক তা করে: |example[23:0]ভেক্টরের সমস্ত বিটগুলি OR'ing এর ফলাফল দেয় example

দুর্ভাগ্যক্রমে ভিএইচডিএলের এই অপারেটর নেই। যদিও comp.lang.vhdl FAQ অনুসারে

ভেক্টরের সমস্ত বিটগুলিতে হ্রাস অপারেশন করার জন্য কোনও পূর্বনির্ধারিত ভিএইচডিএল অপারেটর নেই (যেমন, "বা" কোনও ভেক্টরের সমস্ত বিট)। তবে হ্রাস অপারেটরগুলি সহজেই প্রয়োগ করা যেতে পারে:

[এমন একটি উদাহরণ এড়ানো যা 'এক্স' এবং 'জেড' মানগুলি পরিচালনা করে না]

    function or_reduce( V: std_logic_vector )
                return std_ulogic is
      variable result: std_ulogic;
    begin
      for i in V'range loop
        if i = V'left then
          result := V(i);
        else
          result := result OR V(i);
        end if;
        exit when result = '1';
      end loop;
      return result;
    end or_reduce;
    ...
    b <= or_reduce( b_vec ); 

যে কমেছে, কেন তা বোঝানোর যত্ন নেবে?
ফোটন

এই সংশ্লেষযোগ্য?
জোহানেস স্কাউব -

@ জোহানেস শ্যাব-লিটব অবশ্যই এটি একেবারে বড় ওআর গেটে সংশ্লেষিত করা যেতে পারে (বা আরও ছোট গাছের)) সম্ভবত স্ট্যান্ডার্ড লাইব্রেরির সংস্করণটি (অ্যারোন ডি ম্যারাস্কোর উত্তরে) উড়তে উত্পন্ন কোনও কিছুর চেয়ে ভাল করা যাবে।
ফোটন

ভিএইচডিএল -2008-এ অবিচ্ছিন্ন হ্রাস অপারেটর রয়েছে। FAQ পুরানো। তদুপরি, উপস্থাপিত ফাংশনটি প্রারম্ভিক প্রস্থানের কারণে প্রশ্নযুক্ত সংশ্লেষযোগ্যতার কারণ যা কিছু সরঞ্জাম চিট করে এবং সিমুলেশনের জন্য একটি মাইক্রো-অপ্টিমাইজেশন ছাড়া অন্য প্রয়োজনীয় নয়।
কেভিনটিবেদেউ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.