Hi, i guess you need a proper Data Acquisition Device (DAQ).
During my bachelor works, we did use NI-DAQ USB-6001 with 13 digital I/O and 8 analog inputs. With a proper configuration of Matlab Data Acquisition toolbox, you can reach almost real-time processing (which in our case was adequate enough).
Most, if not all NI cards come with dll files and headder files. using the import dll function in MATLAB it will be possible to interact with your data acquisition hardware directly from your own m files.
Your sample rate will not be limited by MATLAB, this will be determined by the hardware you chose.
You may use data acquisition cards from different companies or you can also develop your own.
1. MATLAB supports hardware of these data acquisition cards: http://www.mathworks.com/hardware-support/data-acquistion-software.html
2. You can program a microcontroller based embedded system containing an ADC and some way to transmit the data to MATLAB. For example, you can use PIC18F series microcontroller which has ADC array and sense the data. After sensing, transmit it via USB. You can find a prototype program from PIC USB tools available online. You can also use AT89C51 microcontroller with an ADC and transmit data serially to MATLAB.
you need some data acquisition modules and the module may connected to PC via USB. Other wise you need some FTDI chip for the interfacing the module between the system and the module via USB. Otherwise you need sufficient knowledge for interfacing between via COM ports. Then you can directly get These COM parts from your MATLAB simulink ...