Thông báo

Collapse
No announcement yet.

thuật toán bộ đếm bit trong vhdl

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • thuật toán bộ đếm bit trong vhdl

    các pro cho em hỏi. có ai biết về bộ đếm bít không( nghia là đếm số bít trông 1 thanh ghi).
    vd: 11110110. thì bộ đếm sẽ có kết quả là 8.
    mong các bác giúp em với

  • #2
    Trong các lập trình VHDL hay verilog, khi khai báo một thanh ghi thì thường phải khai báo thanh ghi có bao nhiêu bit luôn (size). Ví dụ signal a: std_logic_vector(7 down 0) --> size của thanh ghi a được khai báo là 8 bit. Nếu không thì phần mềm tổng hợp ra mạch sẽ không biết là cần bao nhiêu FF cho thanh ghi a.

    Mình đoán là bạn muốn hỏi là thuật toán đếm số bít "có ý nghĩa" trong một thanh ghi. Trong ví dụ của bạn nếu 01111011 --> bộ đếm cho giá trị 7 chứ không phải 8 mặc dù size của thanh ghi là 8. Nếu đây đúng là ý bạn hỏi thì mình nghĩ bạn đã biết cách làm thế nào để đếm được số bit trong thanh ghi rồi. Nếu không phải thì bạn nên nói cụ thể hơn bài toán của bạn.

    Comment


    • #3
      ý của mình là trong thiet kế ps2 ở khối FSM có bộ đếm bit nhận dữ liệu từ thanh ghi. mỗi lần thanh ghi dịch đi 1 bit bh bộ đếm nhận đủ 8 bit tưc là bộ đếm =8 thi fsm mới có tín hiệu cho phép thanh ghi khác dịch

      Comment


      • #4
        Nguyên văn bởi thuhaui Xem bài viết
        ý của mình là trong thiet kế ps2 ở khối FSM có bộ đếm bit nhận dữ liệu từ thanh ghi. mỗi lần thanh ghi dịch đi 1 bit bh bộ đếm nhận đủ 8 bit tưc là bộ đếm =8 thi fsm mới có tín hiệu cho phép thanh ghi khác dịch
        ps2 của bạn có phải là serial-to-parallel không? có tín hiệu (signal) báo cho bạn biết "mỗi lần thanh ghi dịch đi 1 bit" không? Nếu có bạn có thể dùng tín hiệu đó làm đầu vào (clock) cho một bộ đếm 3bit. Khi nào đầu ra của bộ đếm 3 bit = 1 thì bạn cho phép thanh ghi khác dịch đồng thời reset bộ đếm 3bit của bạn luôn.

        Comment


        • #5
          ý của bạn đúng rùi nhưng là khi signal dịch đủ 8 bit cả 1 va 0 thì mới reset. bài có bài nào về chủ đề này không. cho mình xin để hoàn thành nốt bài tập lớn kh

          Comment


          • #6
            Nếu ý của mình đúng rồi thì bác Gúc có tương đối nhiều thiết kế 3bit counter và bạn có thể mượn bất kỳ thiết kế nào của bác ấy miễn là có tín hiệu clock và reset. Bạn chỉ việc nối clock vào tín hiệu "signal thông báo cho bạn mỗi lần dịch 1 bít (bất kể là 0 hay 1)". Sau đó bạn có thể thay đổi một chút thiết kế của bác Gúc để khi nào cnt = "111" thì reset = 0.

            Comment

            Về tác giả

            Collapse

            thuhaui Tìm hiểu thêm về thuhaui

            Bài viết mới nhất

            Collapse

            Đang tải...
            X