khi tốc độ rs232 nối tiếp là không đủ????

P

priestnot

Guest
Ok ở đây là vấn đề của tôi:

Tôi có phải mẫu 8 tín hiệu số (H = 5V L = 0V) ở tốc độ tối thiểu là 80MHZ.
Tôi đang sử dụng vi điều khiển tốc độ cao (C8051F131 từ Silicon Laboratories) với một ≈ ≈ 100MHz hoặc 80MHzcrystal.

Các tín hiệu mà tôi muốn mẫu được kết nối với một trong những cảng 8-bit của bộ điều khiển.

So far so good ...
Vấn đề là tôi cần phải gửi những giá trị về một máy chủ để xử lý chúng.

Những gì tôi cần biết là tốc độ tối đa (baud rate) của một cổng nối tiếp là những gì?
I có thể gửi 8bits ở một tần số của ≈ ≈ 100MHz hoặc 80MHz?

Tôi nghĩ rằng nó sẽ không thể.
Vì vậy, giải pháp của tôi là gì?

Sử dụng một bộ điều khiển USB 2.0 Micro?Nhưng sau đó tôi có để làm cho trình điều khiển cho máy tính và tôi không biết làm thế nào để làm điều đó, liệu có bất kỳ hướng dẫn cho điều đó?

Một giải pháp là sử dụng một nối tiếp sang USB chuyển đổi như ftdi hoặc Texas.Nhưng tôi nghĩ rằng giới hạn tốc độ giống như một cổng nối tiếp bình thường.

Các giải pháp cuối cùng là sử dụng một số loại hệ thống đệm.
Nếu tốc độ lấy mẫu lớn thì tốc độ cổng nối tiếp để điền vào bộ nhớ đệm lên những gì tôi có thể làm để giải quyết vấn đề này có thể có của nó?
Có nhớ bên ngoài chấp nhận đọc và wright cùng một lúc?Và có 2 cổng nối tiếp một cho đọc và một cho wright?
I có thể sử dụng bộ nhớ dữ liệu nội bộ để làm đệm?
Nếu tốc độ lấy mẫu lớn thì tốc độ cổng nối tiếp để điền vào bộ nhớ đệm lên những gì tôi có thể làm để giải quyết vấn đề này có thể có của nó?

Có giải pháp khác không?
Nếu bạn có bất kỳ ý tưởng hoặc nhận xét đến các giải pháp của tôi xin hãy làm cho ...

 
(Của bạn lên đến) 100MIPs C8051F131 sẽ không thể vượt qua những dữ liệu đủ nhanh anyway.Bạn không thể xử lý tín hiệu 100MHz với một phần 100MIPs trừ khi chương trình này là một trong những chỉ dẫn dài.

 
i có biết rằng điều đó.thats lý do tại sao tôi được chỉ tới 80MHz.

Nhưng tôi vẫn là hy vọng cho một giải pháp cho vấn đề của tôi ...Nhập sau 30 phút:Ups tôi đã thực hiện một số calcs và tôi đoán của nó không đủ.

Nếu C8051F131 đang làm việc với một tinh 100MHz, và nó có chu kỳ máy giống nhau mà một 80c51, với một mã như thế này:

LOOP:
MOV @ PTR, # P1; di chuyển đến vị trí con trỏ vào dữ liệu mem / 2 máy Cycles
INC PTR; incrementes con trỏ vào dữ liệu mem / 1Machine Cycles
SJMP LOOP; trả về cho LOOP / 2 máy Cycles

witch thêm như thế này: (MC = Machine Cycle)
Tại bởi = 100MHz => t (1MC) = 1/100MHz = 10ns

do đó chúng tôi có:

LOOP:
MOV @ PTR, # P1; 2 Máy Cycles = 20ns
INC PTR; 1Machine Cycles = 10ns
SJMP LOOP; 2 Máy Cycles = 20ns

t (5MC) = 20ns 10 ns 20 ns = 50ns => f (loop) = 1/50ns = 20MHz

hum là có bất kỳ giải pháp để tăng tần số lấy mẫu????
và nếu bạn có bất kỳ giải pháp cho các câu hỏi đầu tiên phải làm gì khi tốc độ cổng nối tiếp là không đủ.

 
Bạn dường như quên rằng một máy tính không thể đọc dữ liệu theo tốc độ mà ngày nối tiếp và cổng USB ...

Mục đích của thiết kế của bạn là gì?

 
Như đã nói, dữ liệu có thể không được mua lại bởi một LP 100 MHz, cũng không xử lý bởi một máy tính ở tốc độ dự định.Các thông bắt buộc được khoảng 4 đơn đặt hàng của các cường độ trên một RS232 thông thường, do đó, tiêu đề câu hỏi là một understatement tốt đẹp.

Thu hút và bộ tiền xử lý dữ liệu phải được thực hiện bởi phần cứng chuyên dụng logic lập trình tương ứng, ví dụ như một FPGA.Nhưng bạn cần phải có một ý tưởng chính đáng, nơi đặt xử lý dữ liệu trước khi bắt đầu một thiết kế.

 
Khi RS232 là không đủ nhanh sau đó USB hoặc Firewire là nhanh hơn nhiều.

 
ok của dự án là để tạo ra một phân tích hợp lý.
Như tôi sayd trước khi tôi biết rằng alredy isnt RS232 đủ nhanh.

vì vậy cơ hội của tôi là gì?

sử dụng một số loại đệm?sử dụng một microcontroler USB?
sopouse của nó phải là một phần cứng giá rẻ.Ví dụ, nếu bạn thấy bitsope dự án tha nó có một pic để lấy mẫu.do đó họ đã làm nó như thế nào?
http://www.bitsope.com

 
Dường như với tôi, rằng bạn không hiểu nhưng những gì mà tắc nghẽn của một phân tích logic được.Đối với dự án, nó rất cần thiết để hiểu nó!

Hãy để tôi đề cập đến một vài từ khóa đầu tiên:
1.Chấm Công
2.Kích hoạt
3.Dữ liệu lưu trữ

1.Đếm logic nhất có một lựa chọn để sử dụng một đồng hồ từ bên ngoài áp dụng các cách khác để một đồng hồ nội bộ.Nó cần thiết nếu bạn muốn có được một tín hiệu, đó là ví dụ như nhanh hơn 1 / 10 của logic tối đa tỷ lệ lấy mẫu phân tích của bạn.Nó có thể được bỏ qua, nếu LA là dành cho các ứng dụng không đồng bộ hoặc chỉ làm chậm,

2.Một kích hoạt phù hợp logic là cần thiết trong đa số trường hợp phát hiện các sự kiện từ bitstreams trình bày cho LA và bắt đầu hoặc dừng việc mua lại.Nó có hoạt động trong thời gian thực ở tốc độ lấy mẫu thường.

3.Điểm quan trọng nhất là đường dẫn dữ liệu.Bạn cần phải thiết lập một lưu trữ dữ liệu của đủ năng lực, có thể ghi dữ liệu liên tục với tỷ lệ lấy mẫu dự định.Nó có hiệu quả không thể lưu trữ một luồng dữ liệu của 100 MByte / s tại một máy tính chạy một hệ điều hành tiêu chuẩn, ngay cả khi giao diện sẽ có đủ nhanh (Gigabit Ethernet hay PCI Express có một troughput trong khu vực này).Và 100 MByte / s là không đủ cho một LA nhanh.Vì vậy, một chuyên địa phương lưu trữ dữ liệu là cần thiết.

Kết quả là, một FPGA, có thể bổ sung bằng bộ nhớ nhanh bên ngoài, là một nền tảng thiết kế phù hợp cho một LA chi phí thấp.Nguyên nhân truyền dữ liệu với máy PC kiểm soát được giải thoát từ các yêu cầu thời gian thực, có thể sử dụng bất kỳ kênh sẵn có, thậm chí RS232.Tuy nhiên, một giao diện nhanh hơn (USB, Ethernet) là thích hợp hơn, mặc dù nhu cầu bổ sung và hỗ trợ phần cứng logic.

Một bộ vi xử lý USB với một giao diện dữ liệu nhanh, ví dụ như một Cypress FX2 có thể hành động như điều khiển và kênh dữ liệu và cũng có thể thực hiện các cấu hình FPGA.

 
Theo FvM đã giải thích, một phân tích logic, không công việc đơn giản.
Đây là một trong đó bạn có thể có như là tài liệu tham khảo: http://www.pctestinstruments.com/
Bạn có thể đánh bại rằng giá cả ...?

 
Bạn sẽ thấy Oscillscope ngày www.fpga4fun.com.
Họ là về cơ bản các mẫu hardware.They cùng một lúc 100MSPS dữ liệu và gửi đến máy PC tại 115.2Kbps.Also Tôi nghĩ rằng có một Logic Analyzer Core tại www.opencores.org Các FPGA không cần bộ nhớ và bên ngoài. Nếu cần thiết bạn có để làm cho một đơn vị độc lập bạn có thể sử dụng một Nhẹ Nhàng để thử FPGA.I đề nghị của Spartan 3AN từ Xilinx vì nó là nonvolatile và rất nhanh.

 
Hứng cho một số người, bạn có thể muốn kiểm tra cũng http://miniLA.sourceforge.net

JW

 

Welcome to EDABoard.com

Sponsor

Back
Top