Thông báo

Collapse
No announcement yet.

Hỏi về Việc mô phỏng hệ thống SoPC trên Modelsim

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

  • Hỏi về Việc mô phỏng hệ thống SoPC trên Modelsim

    Sau khi sử dụng SoPC Builder để tạo hệ thống (Cpu , onchip_mem , 8-bit PIO input(switch) , 8-bit PIO output(Led) ), mình sử dụng NIOS II IDE để tạo source code cho hệ thống như sau

    #include <stdio.h>
    #include <system.h>
    int main()
    {

    unsigned int Switch_value ;
    volatile int *Switches_ptr = (int *)SWITCHES_BASE;
    volatile int *Green_Leds_ptr = (int *)GREEN_LEDS_BASE;
    volatile int *Red_Leds_ptr = (int *)RED_LEDS_BASE;

    while(1)
    {

    Switch_value = *(Switches_ptr);
    *(Green_Leds_ptr) = Switch_value;
    }

    return 0;
    }


    Sử dụng để đọc Giá trị từ SW ra LED .
    Qua modelsim , mình mô phỏng (SoPC có tạo file mô phỏng sẵn) , nhưng khi đưa giá trị vào cho SW (sửa lại chút xíu trong file testbench của nó , thì không thấy Led thay đổi )
    Ai có bài hướng dẫn mô phỏng trên modelsim thì share cho mình ,xem dùm mình cái code C trên có sai chỗ nào hay hông . Cám ởn nhiều

  • #2
    Bạn dùng IOWR_* trong file io.h thử.
    Bắt chước cái này http://www.engr.udayton.edu/faculty/..._example1.html
    CPU bạn có cache ko?

    Comment


    • #3
      Chào bạn,
      Không biết bạn đã giải quyết được bài này chưa, nếu được có thể share cho mình tham khảo không? Mình cũng đang làm bài này, mà sao cứ vô modelsim là lại có lỗi gì đó, tìm hoài không thấy chân led_pio và sw_pio như trong hệ thống mình thiết kế.

      Về chương trình C thì bạn thiếu chỗ #define . Bạn gán swptr hay ledptr gì đó thì phải định nghĩa địa chỉ cho nó chứ, địa chỉ của nó thì bạn xem trong sopc builder- địa chỉ cơ bản (base) để define địa chỉ cho nó.

      Hi vọng bạn giúp mình.
      Ôi cuộc đời!!!

      Comment


      • #4
        bạn dùng IORD_8DIRECT(base,offset) và IOWR_8DIRECT(base,offset,data) để đọc ghi dữ liệu thử xem sao (bạn xem thêm trong thư viện IO.h để biết thêm chi tiết). đỡ đi cả nùi khai báo int volatile dài thoằn.
        @ohenri: xài system.h rồi thì không cần define bạn à. system.h được generate từ hệ thống SOPC nên cứ mở nên rồi copy tên mà nó đã define sẵn. muốn define lại hay không là tuỳ mình.

        Comment

        Về tác giả

        Collapse

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

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

        Collapse

        Đang tải...
        X