Thông báo

Collapse
No announcement yet.

Đi mạch in trong chế độ truyền dữ liệu tốc độ cao? SPI 100MHz.

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

  • Đi mạch in trong chế độ truyền dữ liệu tốc độ cao? SPI 100MHz.

    xin chào các anh/chị trên diễn đàn, chúc mọi người 1 buoi sang tốt lành.

    trằng trọc mãi không ngủ thêm được, em dậy sớm lên đây hỏi các tiền bối về kỹ thuật đi mạch in khi truyền dữ liệu tốc độ cao.

    em truyền dữ liệu SPI tốc độ truyền từ 25MHz(tạm ổn) đến 100MHz, giữa VDK và VDK, các tụ ký sinh, cảm ký sinh trên line đồng, can nhiễu, trở kháng MOSI, MISO, SCK, tất cả chúng nó làm nên 1 điều đáng buồn, xung SPI SCK của em nó không còn đẹp nữa,gây ra hiện tượng thiếu xung SCK ở 100MHz.

    vậy mạch in nên đi dây SCK gần GND hay gần VCC, hay để data và SCK gần nhau ạ?
    khoảng cách giữa chúng cần phải xa nhau ra hay gần lại ạ.

    sáng sớm em chưa kịp chụp cái hình, đại loại là xung nó lên lên nhăng nhăng như nhìn thấy dãi núi vậy(chân SCK), em cảm ơn.
    TamPhieuLuuKy@yahoo.com
    092 2838 712 --->>

  • #2
    Xung clock của SPI về nguyên tắc có thể nâng lên giá trị bất kỳ nhưng theo tài liệu tôi có thì chỉ đề cập max là 10 MHz.

    Comment


    • #3
      10MHz vậy nó chậm quá vậy anh, em truyền 25MHz nó cũng xấu, nhưng cũng truyền được(em làm trên test board), còn 100MHz nó nhiễu loạn, cái này tần số nó cao quá rồi, chắc nó nhiều cái sai lắm
      TamPhieuLuuKy@yahoo.com
      092 2838 712 --->>

      Comment


      • #4
        Về nguyên tắc các tín hiệu CLK, MISO, MOSI đều là so với đất (single-ended) nên cách đi dây đúng là cách nhau một khoảng đáng kể, xen giữa chúng là đổ đất GND. Hiểu nôm na là đi 7 sợi xen kẽ nhau : GND, CLK, GND, MISO, GND, MOSI, GND. Chiều dài các sợi CLK, MISO, MOSI cần phải bằng nhau hoặc chênh nhau càng ít càng tốt.

        Các phần mềm EDA hiện đại đều có chức năng hỗ trợ vẽ cao tần như trên : đo khoảng cách, đo và áp đặt chiều dài dây bằng nhau.
        Phần mềm tự do hoặc không dùng máy tính nữa !.

        Comment


        • #5
          không biết sài chip gì mà spi 100mhz vậy ?
          Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

          Comment


          • #6
            Phỏng đoán là ADC tốc độ cao, 16/24 bit; hoặc MCU kết nối chip Ethernet 100 Mbps kiểu như ENC624J600.

            Cũng có thể hơi buồn cười chút là bảng LED rất to dùng chip thanh ghi dịch.
            Phần mềm tự do hoặc không dùng máy tính nữa !.

            Comment


            • #7
              Nguyên văn bởi bqviet Xem bài viết
              Phỏng đoán là ADC tốc độ cao, 16/24 bit; hoặc MCU kết nối chip Ethernet 100 Mbps kiểu như ENC624J600.

              Cũng có thể hơi buồn cười chút là bảng LED rất to dùng chip thanh ghi dịch.
              Đang băn khoăn tự hỏi không biết là dùng cái loại MCU gì mà xuất ra được clock cỡ 100mhz ???

              Vì đơn thuần các MCU nếu không có luồng bus cứng chỉ định thì chạy được các clock đó cũng mệt rồi . Đến như xài mấy con Vi xử lý AMD , 386, 486 intel, CPLD, FPGA đơn thuần nó chỉ đẩy trực tiếp các clock từ PLL ra đã thấy khổ rồi ( mà các IC này khi lập trình xong thì các cổng logic , IC của nó như đã được cứng hóa ) , chứ những dòng MCU do giới hạn về các cổng xuất nhập ( phần cứng ) ..., lại phải lập trình xử lý đẩy được tần số clock đó không phải là việc dễ dàng
              ( chưa buồn bàn tới vẽ mạch hay gì khác )
              Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

              Comment


              • #8
                cảm ơn anh bqviet đã chỉ bảo, để em tìm phần mềm tính toán mô phỏng thử, ko thì cũng ko biết làm sao. em đẩy mấy con led, mà cười gì thế anh?

                anh [MENTION=45]queduong[/MENTION]: em dùng thử mấy con arm cho vui, tốc độ thì cao, bộ nhớ tốt, nhưng mỗi tội 3.3v và dòng out yếu. em đang đua đòi dùng mấy con f4, 168MHz(ko hiểu sao nhân tần nó lại ra 200MHz), flash 1M, ram 200kb.
                TamPhieuLuuKy@yahoo.com
                092 2838 712 --->>

                Comment


                • #9
                  100MHz là tốc độ xung, còn tốc độ truyền max ở chế độ 16bit thời gian giữa 2 lần truyền như là 500ns
                  TamPhieuLuuKy@yahoo.com
                  092 2838 712 --->>

                  Comment


                  • #10
                    Cười thán phục người dũng cảm. Đơn giản vậy thôi.

                    Vụ này chạy PIC24E mới ngon hơn nhiều. Tốc độ tới 140 MHz, Fosc/2 (chứ không phải Fosc/4 như dsPIC30). Chịu nhiễu tẹt ga. Thư viện sẵn dùng thoải mái.
                    Phần mềm tự do hoặc không dùng máy tính nữa !.

                    Comment


                    • #11
                      Nguyên văn bởi superhieu1 Xem bài viết
                      cảm ơn anh bqviet đã chỉ bảo, để em tìm phần mềm tính toán mô phỏng thử, ko thì cũng ko biết làm sao. em đẩy mấy con led, mà cười gì thế anh?

                      anh @queduong: em dùng thử mấy con arm cho vui, tốc độ thì cao, bộ nhớ tốt, nhưng mỗi tội 3.3v và dòng out yếu. em đang đua đòi dùng mấy con f4, 168MHz(ko hiểu sao nhân tần nó lại ra 200MHz), flash 1M, ram 200kb.

                      mấy con ARM cortex M4 đẩy ra được 100Mhz ??? Xem lại thử xem , tốc độ xử lý cao chưa chắc đã đẩy được ra các module , I/O cao .

                      --- Cách đơn giản để thử I/O của 1 MCU ( làm việc theo cách xử lý ) ... đó là on/off 1 chân nào đó ... rồi xem kết quả lớn nhất nó chạy được bao nhiêu Mhz ?

                      Tất cả các module tích hợp thì đều phải qua lệnh xử lý , logic tác động hết ... Nên nó chẳng thể nhanh hơn lệnh xử lý được ( không tính các khâu load , nạp dữ liệu ).

                      --- Với các module bên trong chip , nếu là module tốc độ cao thì nó phải có luồng clock riêng , hoặc chân riêng ... chứ chung đụng với các chân chức năng khác ... thì khó mà cao cho được !


                      --- Khi đã chạy , chip đã hỗ trợ ở tần cao ( đo trực tiếp tại chân I/O ) mà thấy tín hiệu đẹp ... sau khi thiết kế mạch mà tín hiệu xấu đi , mất tín hiệu ... lúc đó mới cần xem xét đến cách thiết kế !
                      Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                      Comment


                      • #12
                        để vào sg em test lại, chứ lúc trước em đo là tần số giữa 1 đỉnh liền kề xung SPI là 100MHz đấy a.
                        TamPhieuLuuKy@yahoo.com
                        092 2838 712 --->>

                        Comment


                        • #13
                          Nguyên văn bởi bqviet Xem bài viết
                          Cười thán phục người dũng cảm. Đơn giản vậy thôi.

                          Vụ này chạy PIC24E mới ngon hơn nhiều. Tốc độ tới 140 MHz, Fosc/2 (chứ không phải Fosc/4 như dsPIC30). Chịu nhiễu tẹt ga. Thư viện sẵn dùng thoải mái.
                          cám ơn anh đã nhắc nhở, em không dại đem trứng ra chọi với đá tảng.
                          TamPhieuLuuKy@yahoo.com
                          092 2838 712 --->>

                          Comment


                          • #14
                            sau thời gian nghĩ lễ em quên mất cái thớt.

                            spi truyền ở tốc độ (clock/2)/4 = 25MHz, thời gian load buffer 16bit khoản 500ns
                            Click image for larger version

Name:	DS0001.BMP
Views:	1
Size:	19.5 KB
ID:	1395622



                            xung clock đo tại chân MCU, ko có tải, ở 25MHz
                            Click image for larger version

Name:	DS0000.BMP
Views:	1
Size:	15.7 KB
ID:	1395623



                            còn cái này là cho đão port, vậy thực sự tốc độ lõi no nó tầm 25MIPS
                            while(1)
                            {port~port;}

                            Click image for larger version

Name:	DS0002.BMP
Views:	1
Size:	16.7 KB
ID:	1395624

                            với dạng sóng chưa ra khỏi cửa mà như vầy thì đi lên board chắc nó phẳng luôn. ko biết co con đệm nào khoản 100MHz ko các huynh.
                            TamPhieuLuuKy@yahoo.com
                            092 2838 712 --->>

                            Comment


                            • #15
                              Nguyên văn bởi superhieu1 Xem bài viết
                              sau thời gian nghĩ lễ em quên mất cái thớt.

                              spi truyền ở tốc độ (clock/2)/4 = 25MHz, thời gian load buffer 16bit khoản 500ns
                              [ATTACH]86720[/ATTACH]



                              xung clock đo tại chân MCU, ko có tải, ở 25MHz
                              [ATTACH]86721[/ATTACH]



                              còn cái này là cho đão port, vậy thực sự tốc độ lõi no nó tầm 25MIPS
                              while(1)
                              {port~port;}

                              [ATTACH]86722[/ATTACH]

                              với dạng sóng chưa ra khỏi cửa mà như vầy thì đi lên board chắc nó phẳng luôn. ko biết co con đệm nào khoản 100MHz ko các huynh.
                              Tốc độ lõi nó có thể xử lý nhanh ... nhưng xuất ra I/O nó không nhanh là do chủng loại , kết cấu phần cứng ( có thể cũng liên quan đến dòng chip, câu lệnh ) .
                              Xung nhọn hoắt như kia ... làm mấy cái giao tiếp tốc độ cao chắc chắn chạy cũng không ổn . Như kia xung đẹp lên một chút chắc chỉ tầm 10 - 15Mhz
                              Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X