Thông báo

Collapse
No announcement yet.

lỗi mạch phản hồi trong thiết kế FPGA

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

  • lỗi mạch phản hồi trong thiết kế FPGA

    Mình đang làm bộ tạo mã tín hiệu dùng FPGA . trong sơ đồ dùng các FF_D nối tiếp có tác dụng như thanh ghi dịch nhiều đầu ra. 1 số tín hiệu đầu ra đó , dc đưa trở lại tín hiệu đầu vào cho FF_D đầu tiên thông qua mạch XOR để tạo chuỗi mã(xem sơ đồ).sơ đồ thì đơn giản , mình đã mô phỏng bằng các phần mềm khác thì chạy OK. nhưng khi tạo và mô phỏng trong ISE cũng như trong modelsim tín hiệu đầu ra lại không xác định. điều này chỉ gặp khi lắp thêm cái thằng phản hồi XOR đó(mình đã thử thay nó bằng AND, OR ,...)thì vẫn bị lỗi đó. . anh em nào có kinh nghiệm gì giúp mình với ! (à, có 1 vấn đề là để tạo dc mã thì phải xác lập giá trị ban đầu cho các FF_D đó là khác đồng thời bằng 0, mình cũng đã thử mọi cách nhưng không dc gì cả ! haizz)
    mong sự đóng góp ý kiến của mọi người !
    best regard ! Click image for larger version

Name:	sch.jpg
Views:	1
Size:	141.9 KB
ID:	1410600Click image for larger version

Name:	mo phong.png
Views:	1
Size:	17.9 KB
ID:	1410601
    Last edited by mta_nd; 02-11-2011, 17:48.

  • #2
    phần mô phỏng mình đã thêm tín hiêu enable cho các FF, cũng không khác gì so với so đồ SCH

    Comment


    • #3
      Sao ko thây tín hiệu "reset" nhỉ?
      Bạn đưa thêm 1 testcase cụ thể với input, expected output và actual output thì sẽ tiện cho mọi người hơn nhé.

      Comment


      • #4
        thanks kevin.memi đã quan tâm nhé !
        mình vừa mới làm thử trên sysgen và làm dc rùi ! up sơ đồ và mô phỏng mới cho mọi người cùng xem, mình đang tìm cách tối ưu code lai xem sao !
        have a nice night !
        Attached Files

        Comment


        • #5
          Hi bạn mta_nd,

          Nguyên văn bởi mta_nd Xem bài viết
          ....điều này chỉ gặp khi lắp thêm cái thằng phản hồi XOR đó(mình đã thử thay nó bằng AND, OR ,...)thì vẫn bị lỗi đó. . anh em nào có kinh nghiệm gì giúp mình với ! (à, có 1 vấn đề là để tạo dc mã thì phải xác lập giá trị ban đầu cho các FF_D đó là khác đồng thời bằng 0
          Theo như sơ đồ thì mạch thì nó là Liner Feedback Shifter Register (LFSR) nên ko cần phài dùng cái sysgen làm gì. Vấn bạn xem lại, nếu set giá trị các flipflop bằng 0 thì khi đó Q1 XOR Q4 kết quả là 0!! và mạch của bạn chỉ sinh ra toàng 0 thôi. Đúng ra, ban đầu khi reset thì phải set giá trị cho các flipflop một giá tri SEED, sau đó thi nó mới chạy được.
          Mạch này phổ biến bạn có thể search sample tham khảo, ko cần phải đụng đến sysgen làm gì rồi ngồi optimize.

          chúc may mắn
          Last edited by kevin.memi; 03-11-2011, 04:21.

          Comment


          • #6
            thanks bạn nhiều nhé
            mình đã thực hiện thành công rùi !
            chúc vui

            Comment


            • #7
              Khi coding, thói quen tốt là nên dùng reset để trả mạch về 1 trạng thái cố định.
              Một số FPGA mặc định giá trị khi bật (power-up value) là 0.

              Comment


              • #8
                uhm ! thanks bạn nhiều, mình sẽ rút kinh nghiệm

                Comment

                Về tác giả

                Collapse

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

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

                Collapse

                Đang tải...
                X