Thông báo

Collapse
No announcement yet.

[PSOC] Beginner

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

  • #16
    Mình cũng bực mình cái IDE này nhất vụ open project đó. Bạn thử File/SwithWorkspace sang thư mục khác rồi import thử coi. À mà nếu ko còn mấy cái file dạng có dấu "." ở đầu tên file thì có thể ko mở dc đâu.
    Chuyện nhỏ như con thỏ,bắt thỏ mới là chuyện lớn!!!

    Comment


    • #17
      hic, workspace của mình ở ổ C, các project ở ổ D, và mọi chuyện đều tốt đẹp với các project dc tạo ra và không đổi (tên hay đường dẫn). bây giờ thì ko biết sao mà đem báo cáo với thầy đây, copy project qua usb rồi đưa vô máy trường thì làm sao mà Nios II ở máy trường nó biết cho dc

      Comment


      • #18
        Ủa, mình xài bình thường mà bạn, mình down mấy project trên mạng về, mở IDE ra, chọn switch workspace chỉ đến chỗ vừa down về, sau đó import ngay cái đó luôn, có bị sao đâu, bạn thử lại coi.
        Chuyện nhỏ như con thỏ,bắt thỏ mới là chuyện lớn!!!

        Comment


        • #19
          Thanks bạn, mình làm dc rồi. Nhưng bạn ơi, bạn đã bao giờ viết code assembly trong Nios II chưa? Mình viết dc và debug Ok, nhưng tự nhiên giờ chỉ có thể debug step by step (quan sát thanh ghi từ từ), còn muốn run luôn 1 lần thì ......ko dc. Hay nói cách khác, mình mà nhấn "RUN" là nó chạy 1 lèo , và sau khi "run" xong thì mọi thanh ghi cũng "biến mất", làm mình chẳng quan sát dc kết quả gì cả

          Comment


          • #20
            Cho mình hỏi tên threat bạn để là PSOC mà nội dung là SOPC là sao? Theo mình hiểu là PSOC là sản phẩm của cypress.
            |

            Comment


            • #21
              oh, có lẽ mình ko rành về các sản phẩm, nhưng PSOC (programmable system on chip) và SOPC ( system on programmable chip) theo mình hiểu dù có "ám chỉ" 1 dòng cụ thể nào hay không thì ý nghĩa cũng khá giống nhau, nhưng vì mình thấy ít ng dùng từ SOPC (bạn search thì thấy kết quả toàn PSOC) nên mình mới để threat là PSOC. Nếu có gì sai thì

              Comment


              • #22
                Tôi xin đóng góp thêm vào code của it4rb.

                Code:
                #include "systemc.h"
                #include <stdio.h>
                #define num_len 20
                
                sc_uint<8> serries_of_1(sc_uint<num_len> &input)
                {
                  sc_uint<8> max_cnt = 0;   //số bit 1 cao nhất
                  sc_uint<8> temp_cnt = 0; // số lần 1 liên tục
                
                  for (int i=0;i<num_len;i++)
                  {
                     if(input[i] == 1)// thử coi bit có bằng 1 không?
                           temp_cnt++;
                     else
                     {
                        if (temp_cnt > max_cnt)
                           max_cnt = temp_cnt; // tìm temp_cnt lớn nhất
                        temp_cnt = 0; // nếu bit = 0, counter bắt đầu trở lại
                     }
                  }
                  return max_cnt;
                }
                
                int main()
                {
                  sc_uint<num_len> in = 0x30F01;
                  sc_uint<8> out = serries_of_1(in);
                  printf("out = %d\n",int(out)); 
                  return 0;  
                }
                Tôi đã chạy thử và nó hoạt động như ý muốn.

                Chào
                Tony
                Last edited by tonyvandinh; 25-03-2010, 07:13. Lý do: Sửa chữa
                Chúc một ngày vui vẻ
                Tony
                email : dientu_vip@yahoo.com

                Comment


                • #23
                  Em đang đau cả đầu với cái của nợ này cả tuần nay, làm giao tiếp với sdcard mãi mà ko dc, có ai làm thành công chưa ta, em thử với core của altera và 1 core ngoài mà cũng ko dc, chán vãi.
                  À mà các bác cho em hỏi cái Nios IDE với lại cái Altera Monitor có hơn kém nhau gì ko vậy?
                  Chuyện nhỏ như con thỏ,bắt thỏ mới là chuyện lớn!!!

                  Comment


                  • #24
                    theo mình biết thì Altera monitor dc khuyên dùng trong các Lab, vì cách sử dụng đơn giản và ko có quá nhiều rắc rối cho ng mới học (tuy nhiên muốn xài nó thì phải có Hardware), còn Nios II IDE thì dc xem là khá "biến hoá", chính vì vậy mà trong các lab , Altera ko sử dụng Nios II vì cho rằng nó phức tạp cho newbie sử dụng, và cũng chưa thể khai thác hết Nios II IDE, nên cứ xài ALtera Monitor. Nhưng theo mình thì cứ xài Nios II IDE, vì trc sau gì cũng ko thể xài Altera Monitor mãi dc, vả lại ko có Hardware thì .....

                    Comment


                    • #25
                      Nguyên văn bởi phuongdua Xem bài viết
                      theo mình biết thì Altera monitor dc khuyên dùng trong các Lab, vì cách sử dụng đơn giản và ko có quá nhiều rắc rối cho ng mới học (tuy nhiên muốn xài nó thì phải có Hardware), còn Nios II IDE thì dc xem là khá "biến hoá", chính vì vậy mà trong các lab , Altera ko sử dụng Nios II vì cho rằng nó phức tạp cho newbie sử dụng, và cũng chưa thể khai thác hết Nios II IDE, nên cứ xài ALtera Monitor. Nhưng theo mình thì cứ xài Nios II IDE, vì trc sau gì cũng ko thể xài Altera Monitor mãi dc, vả lại ko có Hardware thì .....
                      Phải ý của bạn là làm cách nào để chuyển mã C ở trên qua hardware mà không phải lệ thuộc vào dụng cụ của những hãng FPGA như Altera?
                      Chúc một ngày vui vẻ
                      Tony
                      email : dientu_vip@yahoo.com

                      Comment


                      • #26
                        Mình ko hiểu lắm ý bạn, nhưng có lẽ ý mình ko phải vậy. Ở đây chỉ là nếu xài Altera monitor, bạn sẽ ko thể xem các thanh ghi hay debug nếu ko có hardware gắn vô, nhưng dc cái giao diện hay cách sử dụng khá đơn giản....Trong khi đó Nios II IDE là 1 chuyện khác, có khi ko cần có cái board bên cạnh, vẫn có thể dùng Nios II để debug hay tạo ra các file simulation cho mô phỏng, lại hỗ trợ nhiều ngôn ngữ, thư viện,....Nói chung là rất nhiều tính năng để khai thác. Tuy nhiên, suy cho cùng, nếu có board thì vẫn tốt hơn. Còn Nios II IDE có phải là tool của các hãng FPGA hay ko thì mình ko rõ

                        sc_uint<8> serries_of_1(sc_uint<num_len> &input)
                        Mình ko hiểu câu lệnh này, đây là mở đầu của 1 hàm phải ko? Vậy sc_uint<8> là gì vậy bạn ?


                        ------------------
                        up lại câu hỏi lúc trước của mình
                        .Có ai bik hông

                        Nhưng bạn ơi, bạn đã bao giờ viết code assembly trong Nios II chưa? Mình viết dc và debug Ok, nhưng tự nhiên giờ chỉ có thể debug step by step (quan sát thanh ghi từ từ), còn muốn run luôn 1 lần thì ......ko dc. Hay nói cách khác, mình mà nhấn "RUN" là nó chạy 1 lèo , và sau khi "run" xong thì mọi thanh ghi cũng "biến mất", làm mình chẳng quan sát dc kết quả gì cả
                        Last edited by phuongdua; 25-03-2010, 10:46.

                        Comment


                        • #27
                          Nguyên văn bởi phuongdua Xem bài viết
                          sc_uint<8> serries_of_1(sc_uint<num_len> &input)

                          Mình ko hiểu câu lệnh này, đây là mở đầu của 1 hàm phải ko? Vậy sc_uint<8> là gì vậy bạn ?
                          sc_uint là 1 systemC datatype dùng cho unsigned integer (số nguyên dương)? số trong ngoăc <> là số bit cho nên sc_uint<8> ám chỉ cho 8 bit nguyên dương. Hàm ở trên sẽ nhận 20 (num_len = 20) bit vào và cho ra 8 bits. Đây là kỹ thuật mô hình mới ở dạng C/C++ để mô tả sự bit chính xác mà chỉ có thể thực hành ở HDL (Hardware Description Language, VHDL/Verilog).

                          Tôi thấy bạn it4rb dùng datatype tự nhiên của C để mô tả cho nên muốn đóng góp thêm cách mô tả khác để các bạn học hỏi thêm. Hiện giờ cách mô tả này có thể được tổng hợp để chuyển qua RTL rồi qua gate (FPGA/ASIC) mà không phải lệ thuộc vào cái IDE cố định nào. Mã ở trên có thể compile và link với Microsoft C/C++ hoặc gcc với điều kiện phải lấy systemC từ http://www.systemc.org/home/

                          Có thể là tôi hơi đi xa với đề tài này. Tôi sẽ dừng tại đây và thành thật xin lỗi.

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

                          Comment


                          • #28
                            Sao lại xin lỗi, mình rất vui khi dc học thêm 1 số thứ từ bạn, hy vọng bạn sẽ cung cấp thêm nhiều kiến thức bổ ích cho "ng mới" như mình.
                            Cho mình hỏi, nếu type trên có thể can thiệp từng bit thì ko bik mình có thể sửa code lại thành sc_uint<5> dc ko? vì mình thấy số lượng tối đa số 1 trong 1 số 20 bit thì dùng 5 bit để diễn tả cũng ok rồi.

                            Và mình có thể sử dụng cấu trúc này cho Nios II IDE bình thường chứ? hay có cần khai báo thêm gì ko?

                            _ 1 câu nữa nhé. Sử dụng thư viện stdio thì cần phải có STDOUT device, nhưng ko rõ STDOUT device vd là cái gì ?
                            Last edited by phuongdua; 25-03-2010, 20:11.

                            Comment


                            • #29
                              hi, mình đã viết code cho bài này, vì mình định làm bằng 2 cách viết ( thêm cách của bạn tony), mà cách của bạn tony chắc đúng rồi, nên mình viết thử cách bình thường trước, nhưng nó lại báo lỗi "type conflict"
                              int main()
                              {
                              unsigned int test_num = 232;
                              unsigned char num_1s = Counter(test_num);
                              return 0;
                              }

                              unsigned char Counter( unsigned int test_num)
                              {
                              unsigned char count = 0;
                              unsigned int temp = test_num;
                              unsigned char max = 0;
                              while (temp >0)
                              {
                              if((temp %2)==1)
                              count ++;
                              else
                              {
                              if(count > max)
                              max = count;
                              count = 0;
                              }
                              temp = temp >> 1;
                              }
                              return max;
                              }
                              -------------------------
                              ý, mình bik tại sao rồi, lẽ ra phải để hàm Counter trước, hì, lỗi sơ đẳng mà cũng sai, ngại quá
                              Last edited by phuongdua; 25-03-2010, 20:57.

                              Comment


                              • #30
                                Nguyên văn bởi phuongdua Xem bài viết
                                Cho mình hỏi, nếu type trên có thể can thiệp từng bit thì ko bik mình có thể sửa code lại thành sc_uint<5> dc ko? vì mình thấy số lượng tối đa số 1 trong 1 số 20 bit thì dùng 5 bit để diễn tả cũng ok rồi.
                                Đúng, bạn có thể dùng 5 bits vì số đếm liên tục của 1 không thể lớn hơn 20.

                                Nguyên văn bởi phuongdua Xem bài viết
                                Và mình có thể sử dụng cấu trúc này cho Nios II IDE bình thường chứ? hay có cần khai báo thêm gì ko?
                                Tôi không rành về Nios II IDE lắm. Nhưng hình như là nó dựa vào Eclipse IDE thì chắc là sẽ dùng "gcc" để compile. Nhưng tôi không biết phần C to RTL của Altera có thể tổng hợp được systemC datatype (chắc là không vì những ví dụ toàn dùng C native datatype)

                                Nguyên văn bởi phuongdua Xem bài viết
                                _ 1 câu nữa nhé. Sử dụng thư viện stdio thì cần phải có STDOUT device, nhưng ko rõ STDOUT device vd là cái gì ?
                                Tôi nghĩ Nios II IDE hỗ trợ cho stdout. Nếu không thì phần kiểm duyệt hơi phức tạp :-)

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

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X