Do-it-Myself KVM?


7

Tôi có một số máy tính (máy tính để bàn) ở các vị trí địa lý khác nhau mà tôi muốn truy cập từ xa. Các giải pháp KVM-over-IP thương mại mà tôi tìm thấy rất tốn kém (hơn 200 euro mỗi giải) và các giải pháp rẻ nhất không hỗ trợ bật nguồn cho các thiết bị tắt. Tôi có một số kinh nghiệm với vi điều khiển và thiết bị điện tử (tôi có thể dễ dàng thực hiện chuyển đổi năng lượng) và tôi tự hỏi làm thế nào tôi có thể bắt đầu xây dựng một KVM như vậy. Rõ ràng tôi cần bộ điều khiển đầu vào VGA / HDMI / USB mà tôi có thể kết nối với thứ gì đó như Raspberry Pi sẽ cung cấp phần còn lại của chức năng (TCP / IP và RDP / VNC).

Vì vậy, những thành phần nào tôi có thể sử dụng cho một dự án như vậy? (tốt nhất là các thành phần tôi có thể sử dụng các kỹ năng hàn của mình trên).


1
Có lý do nào để không sử dụng giải pháp chỉ dành cho phần mềm như VNC / RDP, v.v. cho khía cạnh KVM chạy trên máy chủ và chỉ sử dụng một cái gì đó được nhúng cho điều khiển nguồn không? Tôi có thể sai nhưng không thể nghĩ ra bất kỳ cách dễ dàng / rẻ tiền nào để đưa đầu vào video VGA / HDMI vào một cái gì đó như RPi.
PeterJ

1
Không chắc là bạn sẽ có thể làm điều này với giá dưới 200 euro, trừ khi bạn đánh giá tiêu cực thời gian của mình.
Rocketmagnet

@PeterJ: Tôi ước tôi có thể sử dụng giải pháp chỉ dành cho phần mềm, nhưng tôi sẽ đọc như thế nào, ví dụ như đầu ra VGA từ một máy tính tùy ý?
tazmanos

@Rocketmagnet: Đây sẽ là một dự án thú vị / thú vị đối với tôi, vì vậy thời gian xây dựng nó sẽ là vô giá ... Tôi quan tâm hơn đến việc tìm kiếm các linh kiện điện tử (hy vọng không đắt tiền) mà tôi có thể sử dụng để xây dựng nó.
tazmanos

2
@tazmanos, bạn có thực sự cần nó là một máy tính tùy ý hoặc xem xét bạn cần đính kèm phần cứng không, bạn chỉ cần cài đặt phần mềm? Làm điều đó với giá dưới 200 Euro chắc chắn sẽ có thể (bỏ qua thời gian) trong phần cứng nhưng cực kỳ phức tạp nếu bạn chưa từng làm điều gì tương tự trước đây. Tôi không muốn nghe có vẻ tiêu cực (cố gắng giúp đỡ) nhưng nó có vẻ như là một câu hỏi mới và tôi hy vọng nó có thể khiến bạn mất một năm hoặc hơn để nghiên cứu / phát triển, nó không thực sự là một mối hàn với nhau và tiết kiệm tiền dự án.
PeterJ

Câu trả lời:


7

Tôi đã làm việc trên các đơn vị KVM thương mại và có thể chứng thực rằng chúng không chỉ là một bài tập tầm thường để thiết kế và làm việc.

Một trong những thách thức trong thiết kế như vậy là thu được các dạng sóng tương tự của tín hiệu video VGA / SVGA / XGA / WXGA từ một máy tính tùy ý và chuyển đổi thành định dạng kỹ thuật số có thể được xử lý trong miền kỹ thuật số. Tin tốt là có những con chip có sẵn có thể làm công việc này cho bạn. Một trong số đó là từ các thiết bị tương tự được gọi là ADV7604 . Điều này đặc biệt có thể chọn từ một trong bốn nguồn video và số hóa thành ba luồng dữ liệu song song 12 bit một cho mỗi R, G và B. Phần này hỗ trợ số hóa lên đến 170 MHz.

Một thách thức khác liên quan đến việc thiết kế một đơn vị KVM là thu thập thông tin pixel kỹ thuật số tốc độ cao vào bộ nhớ đệm nơi nó có thể được xử lý trước khi gửi qua mạng đến trang web từ xa. Cần phải sử dụng một cái gì đó giống như một GPU hiệu suất cao được kết nối với SDRAM để quay khung hình và nén video. Bạn thấy rằng việc chuyển thời gian thực của thông tin khung video hoàn chỉnh chỉ là không thực tế trên các mạng công cộng. Chỉ dành cho video có tốc độ lên tới 170 MHz * 36 bit tương ứng với tốc độ dữ liệu thô là 6,12 gigabit mỗi giây. Các đơn vị KVM thành công hoạt động bằng cách lưu trữ (các) khung hình video trước đó và sau đó so sánh với khung video hiện tại và chỉ tính toán sự khác biệt từ khung hình này sang khung hình khác. Đó là những khác biệt sau đó được gửi qua mạng cùng với thông tin Đồng bộ hóa và tín hiệu bàn phím và chuột bị bắt.

Do phải mất khá nhiều xử lý đặc biệt để chuẩn bị dữ liệu chênh lệch video cộng với thông tin đồng bộ và khóa / chuột vào các gói để truyền qua Ethernet, nên cần phải sử dụng một thiết bị xử lý đặc biệt để kết nối giữa FPGA và mạng của bạn. Có một số công ty biến các bộ xử lý này thành các sản phẩm đặc biệt mà các nhà sản xuất KVM nhúng vào các đơn vị KVM của họ. Một số thiết bị này thực sự có thể chứa logic tùy chỉnh để thay thế cho tốc độ cao đã được đề cập trước đây. Điều phổ biến là các bộ xử lý KVM này sử dụng CPU lớp ARM 9 với các công cụ DMA đặc biệt chuyên dụng để di chuyển dữ liệu khác biệt video từ bộ đệm thu sang cổng mạng.

Các đơn vị KVM thường bắt chuột và bàn phím dưới dạng tín hiệu USB phải được chuyển đổi thành định dạng phù hợp để được bao gồm với dữ liệu video được gửi qua mạng. Bộ xử lý loại KVM bao gồm các cổng USB để hỗ trợ chụp này.

Vì bây giờ bạn có thể nhận ra CPU hiệu suất cao trong bộ xử lý KVM cần phải có một chút tốt nếu phần mềm được nhúng vào nó một khi bạn vượt qua nhiệm vụ kết hợp tất cả các phần cứng của thiết kế. Trong các dự án mà tôi đã làm việc, phải mất một đội ngũ tài năng gồm nhiều nhà phát triển phần mềm một năm trở lên để có được tất cả các phần mềm được cải tiến cho một KVM thành công.

Tôi hy vọng điều này sẽ giúp bạn thấy những bước bạn có thể thực hiện nếu bạn quyết định dấn thân vào con đường thú vị để tạo ra đơn vị KVM từ xa của riêng bạn để tiết kiệm vài trăm đô la khi mua một chiếc đã sẵn sàng. Nếu bạn quyết định từ bỏ công việc thiết kế và mua cuối cùng thì cũng không sao. Tôi có thể đề nghị bạn tìm kiếm và xem qua sản phẩm Lantronix Spider. Đây là một đơn vị KVM loại IP tốt mà tôi đã sử dụng và đi kèm với một sản phẩm khác mà tôi đã thiết kế. Lưu ý rằng tôi không có liên kết với Lantronix ngoài việc là người dùng / khách hàng.


Phần điện tử làm tôi lo lắng một chút, nhưng một khi tín hiệu nằm trong bộ nhớ đệm, chỉ còn vài bước nữa là được phục vụ bằng RDP (một chút khó khăn nhưng đơn giản). Để phát video hoặc trò chơi, nó sẽ không hoạt động, nhưng với một vài cú nhấp chuột trên máy tính để bàn hoặc dòng lệnh Linux, đó là kịch bản sử dụng của tôi, nó sẽ rất hoàn hảo.
tazmanos
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.