Thông báo

Collapse
No announcement yet.

Làm microprocessor với VHDL

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

  • Làm microprocessor với VHDL

    Bọn tớ nhận đồ án làm 1 micro processor được viết bằng VHDL.
    Thật ra thì tớ mới là beginner ở phần này, có thể nói là chưa biết gì , và chưa biết bắt đầu từ đâu.
    Muốn hỏi các pro xem tớ nên bắt đầu như thế nào, có những yêu cầu gì khi làm.
    Tớ tìm đc 1 cuốn sách có nói đến việc thiết kế vi xử lý bằng ngôn ngữ này, định dựa vào nó để làm
    http://www.mediafire.com/?mdhwmvjtyii

    Mong mọi người cho ý kiến giúp đỡ mình.

    PS: đồ án này thay cho thi học kỳ, và còn 1 tháng nữa để nộp

  • #2
    Quy trình làm bộ vi xử lý bằng FPGA như sau:
    Nó có thể tạo ra bộ vi xử lý đến 200 DMIPS, có thể tạo ra nhiều CPU trên một lõi FPGA
    1. Tạo SOPC Builder system với Quartus II
    - Thêm phần cứng để tạo thành Nios II Processor
    - Thêm CPU, RAM, JTAG, UART, PIO, TIMER...v..v
    2. Tạo sơ đồ mạch cho vi xử lý (Block Diagram/Schematic File)
    - Kết nối mạch giữa các block.
    - Gán chân cho chíp...
    - Tạo thành công CPU...
    3. Sử dụng Nios II IDE để viết chuơng trình C cho vi xử lý đã tạo ra.
    4. Nạp vào chíp qua Quartus II Programmer
    5. Gỡ rối với Debug như các chíp Vi xử lý khác
    Còn nhiều cái hay khác...
    Cty TNHH Ứng Dụng Phát Triển Công Nghệ ECAPRO

    Comment


    • #3
      Nếu các bạn sinh viên đang làm khóa luận tốt nghiệp liên quan đến vấn đề này thì có thể đến cty ECAPRO để liên hệ thực tập.
      Cty TNHH Ứng Dụng Phát Triển Công Nghệ ECAPRO

      Comment


      • #4
        Hình như cái mà bác herrtien nói ko phù hợp với đề tài của bạn í cho lắm. Làm vậy thì nghĩa là cái cpu đã dc Altera viết rồi, trong khi đề bài yêu cầu tự viết bằng vhdl cơ mà.
        Bạn có thể nói cụ thể thêm yêu cầu đề tài như thế nào ko? Néu chỉ làm dạng đơn giản để minh họa các thành phần và cách hoạt động của một vxl thì ko khó lắm đâu, 1 tháng là đủ, bạn có thể đọc qua cuốn này:
        http://depositfiles.com/en/files/tix1wdhun
        để hiểu về 2 thành phần cơ bản của một cpu đơn giản là control unit và datapath. Sau đó thiết kế từ từ từng phần một.
        Chuyện nhỏ như con thỏ,bắt thỏ mới là chuyện lớn!!!

        Comment


        • #5
          Nguyên văn bởi viva4ever Xem bài viết
          Bọn tớ nhận đồ án làm 1 micro processor được viết bằng VHDL.
          Thật ra thì tớ mới là beginner ở phần này, có thể nói là chưa biết gì , và chưa biết bắt đầu từ đâu.
          Muốn hỏi các pro xem tớ nên bắt đầu như thế nào, có những yêu cầu gì khi làm.
          Tớ tìm đc 1 cuốn sách có nói đến việc thiết kế vi xử lý bằng ngôn ngữ này, định dựa vào nó để làm
          http://www.mediafire.com/?mdhwmvjtyii

          Mong mọi người cho ý kiến giúp đỡ mình.

          PS: đồ án này thay cho thi học kỳ, và còn 1 tháng nữa để nộp
          Còn 1 tháng thì làm được gì nhỉ? :-s
          Cách 1: len opencores.org download về rồi nộp
          Cách 2: làm con microprocessor có 4 intructstion thôi .. +, -, *, mov ...
          Thôi nộp giấy trắng đi bạn oy

          Comment


          • #6
            Tại sao chưa biết gì về VHDL mà đã nhận làm microprocessor? Mà bạn có biết những hoạt động của uP chưa? Nó có những khối chính là gì? Hoạt động ra sao? Độ rộng của data là bao nhiêu? Không gian của đỉa chỉ là gì? Định dùng uP này cho công việc gì?

            Bạn hỏi tổng quát quá không có ai giúp ý kiến cho bạn đâu. Việc đầu tiên là phải viết specification cho cái uP mà bạn muốn làm. Sau đó viết kế hoạch để thử nghiệm về tất cả những công dụng. Rồi phân chia ra thành khối tùy theo cơ sở hoạt động. Viết VHDL và xác nghiệm từng khối một. Móc nối các khối với nhau rồi thử theo kế hoạch đã đưa ra. Còn nhiều chi tiết khác nữa. Nên tìm hiểu kỹ càng rồi đặt câu hỏi khi bị khúc mắc. Câu hỏi mà có nhiều vấn đề quá khó được trả lời và sẽ phí phạm thời gian

            Chúc thành công
            Chúc một ngày vui vẻ
            Tony
            email : dientu_vip@yahoo.com

            Comment


            • #7
              Nguyên văn bởi it4rb Xem bài viết
              Hình như cái mà bác herrtien nói ko phù hợp với đề tài của bạn í cho lắm. Làm vậy thì nghĩa là cái cpu đã dc Altera viết rồi, trong khi đề bài yêu cầu tự viết bằng vhdl cơ mà.
              Bạn có thể nói cụ thể thêm yêu cầu đề tài như thế nào ko? Néu chỉ làm dạng đơn giản để minh họa các thành phần và cách hoạt động của một vxl thì ko khó lắm đâu, 1 tháng là đủ, bạn có thể đọc qua cuốn này:
              http://depositfiles.com/en/files/tix1wdhun
              để hiểu về 2 thành phần cơ bản của một cpu đơn giản là control unit và datapath. Sau đó thiết kế từ từ từng phần một.
              Đúng như bạn nói, tớ hỏi kỹ rồi, do bọn tớ mới bắt đầu nên yêu cầu ko quá cao. ko phải là 1 con CPUquá phức tạp đâu, mà chỉ đơn giản là 1 con vi xử lý nho nhỏ, kiểu như AVR hoặc PIC, có một số module đơn giản, giải quyết một số vấn đề như adder, encoder, counter... rồi ghép các module lại với nhau; tạo sơ đồ chân cho nó, xử dụng Spartan3 của Xilinx.

              Comment


              • #8
                Nguyên văn bởi herrtien Xem bài viết
                Nếu các bạn sinh viên đang làm khóa luận tốt nghiệp liên quan đến vấn đề này thì có thể đến cty ECAPRO để liên hệ thực tập.
                Tớ mới năm 4, chưa phải làm tốt nghiệp. Đây chỉ là đồ án môn học, thay điểm thi thôi.
                Chơ tớ hỏi trong phần test bench, lúc tạo tín hiệu đầu vào, có 1 cách là viết thẳng chương trình VHDL; còn 1 cách khác là click chuột để tạo tín hiệu 1 hoặc 0. Tớ ko biết tìm ở chỗ nào. (dùng Xinlinx ISE 11)
                Cho tớ học đến đâu thì hỏi tới đó nhá.
                Đầu tiên là trong Shift Operation, SRL(logical right shift) và SRA (arithmetic right shift), ROR(rotate right logic) khác nhau chỗ nào?
                Ví dụ
                signal A_vec : bit_vector(7downto 0) := "11000110";
                signal B_vec: bit_vector( 7 downto 0);

                Thì kết quả của mấy phép dịch sẽ như thế nào?
                B_vec <= A_vec SRL 2;
                B_vec <= A_vec ROR 2;
                B_vec <= A_vec SRA - 2;

                ...
                Thôi học tới chỗ nào ko hiểu thì hỏi vậy

                Comment


                • #9
                  Nguyên văn bởi viva4ever Xem bài viết
                  Tớ mới năm 4, chưa phải làm tốt nghiệp. Đây chỉ là đồ án môn học, thay điểm thi thôi.
                  Chơ tớ hỏi trong phần test bench, lúc tạo tín hiệu đầu vào, có 1 cách là viết thẳng chương trình VHDL; còn 1 cách khác là click chuột để tạo tín hiệu 1 hoặc 0. Tớ ko biết tìm ở chỗ nào. (dùng Xinlinx ISE 11)
                  Cho tớ học đến đâu thì hỏi tới đó nhá.
                  Đầu tiên là trong Shift Operation, SRL(logical right shift) và SRA (arithmetic right shift), ROR(rotate right logic) khác nhau chỗ nào?
                  Ví dụ
                  signal A_vec : bit_vector(7downto 0) := "11000110";
                  signal B_vec: bit_vector( 7 downto 0);

                  Thì kết quả của mấy phép dịch sẽ như thế nào?
                  B_vec <= A_vec SRL 2;
                  B_vec <= A_vec ROR 2;
                  B_vec <= A_vec SRA - 2;

                  ...
                  Thôi học tới chỗ nào ko hiểu thì hỏi vậy
                  Hy vọng cái link dưới đây sẽ giải thích cho những câu hỏi của bạn

                  http://en.wikipedia.org/wiki/Bitwise_operation
                  Chúc một ngày vui vẻ
                  Tony
                  email : dientu_vip@yahoo.com

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  Đang tải...
                  X