From Student to Engineer: Preparing Future Innovators With the NI LabVIEW RIO Architecture


As modern technology advances and Moore’s law continues to take effect, we find that complex computing systems are all around us. They regulate the temperature in homes, control vehicle speed on the road, and provide unlimited access to information in a handheld device. Today’s engineering students are being asked to not only master the fundamental elements of engineering, but to develop an appreciation for a complete system. To ensure that they graduate prepared to engage in modern engineering, students need to be immersed in real-world system design well in advance of graduation using the same technology they will see in their careers.


LabVIEW RIO Architecture

For nearly a decade, National Instruments has been providing reconfigurable hardware paired with graphical programming to cutting-edge researchers and companies around the globe. We call our unique hardware/software approach the LabVIEW reconfigurable I/O (RIO) architecture. It is based on four components: a processor, a reconfigurable FPGA, inputs and outputs, and graphical design software. Combined, these components provide the ability to rapidly create custom hardware circuitry with high-performance I/O and unprecedented flexibility in system timing control.


NI LabVIEW RIO Architecture

NI CompactRIO products, including the single board RIO options, are designed for professional engineers. The impact of this technology has led to industry demand of LabVIEW and RIO knowledge in graduates. To introduce students to the LabVIEW RIO architecture, NI offers NI myRIO, an embedded hardware device created specifically to help students design real, complex engineering systems more quickly and affordably than ever while still gaining the skills necessary to use industry-grade technology upon graduation. NI myRIO uses the same LabVIEW RIO architecture as its professional counterparts and offers students an appropriate entry point to the same revolutionary technology used globally by professional engineers.

A Gradual Approach to Advanced Programming

When designing NI myRIO, our aim was to give students access to the same industry-grade technology they would see upon graduation; however, we know that students approach this technology with various knowledge levels and may not be ready for the advanced programming required of a professional engineer. Using the LabVIEW RIO architecture approach, we can take advantage of LabVIEW system design software to offer NI myRIO users a spectrum of programming complexity. Depending on programming knowledge, students can begin with configuration-based Express VIs and move to advanced modes of programming as they feel ready.


At the simplest level, students can gain quick access to a predefined shipping FPGA bitfile using Express VIs specifically created for NI myRIO. Express VIs are configuration-based functions that minimize programming and can be found on the NI myRIO palette in LabVIEW.

Express Code plus Palette.png

As students gain programming knowledge, they can graduate to more advanced programming using the NI myRIO Adanced I/O API. To help students transition from Express VIs to traditional LabVIEW programming, each Express VI includes a “View Code” button that gives students the ability to see the detailed underlying code.

View Code


Students can copy and paste this code to a LabVIEW block diagram or can program from scratch with lower level peripherals using the Advanced I/O subpalette.


Advanced I_O Side by Side.png


At the most fundamental level, students can investigate and implement the same LabVIEW programming techniques used by professional engineers. By double-clicking on any Advanced I/O VI, students can see the low-level handshake between processor code and the FPGA bitfile.


Read_Write Control.jpg.png


Students programming on this level can completely customize both processor and FPGA code using the same low-level LabVIEW peripherals used by professional engineers working with products like NI CompactRIO and NI Single-Board RIO.


Although LabVIEW provides engineers the tool for total system design, engineers may choose to execute some tasks in a programming language such as C or C++. Because the dual-core ARM Cortex-A9 processor on NI myRIO runs the NI Linux Real-Time OS, users can choose to program the processor in C or C++ using their preferred integrated development environment (IDE). This gives students the ability to choose the programming language that is best for the task at hand. This same option is offered to professional engineers with the new NI cRIO-9068, which uses the same Zynq chip technology found in NI myRIO.


Powerful Hardware for Real-World Projects

As crucial as the approachability of the programming experience was to the design of NI myRIO, the algorithms that students develop need to be backed by powerful hardware that delivers the performance required to give students the ability to design complex, real-world systems. NI myRIO features the Xilinx Zynq-7010 all-programmable system on a chip, which includes a dual-core ARM Cortex-A9 processor and an Artix-7 FPGA. This industry proven hardware empowers students to imagine an idea and then create it, innovating with the confidence of powerful technology. See how to get started with the myRIO device.


Powerful Hardware for Real-World Projects




NI myRIO is a revolutionary tool that places the power of the LabVIEW RIO architecture, a globally adopted, industry proven hardware/software design approach, in the hands of students. With a gradual approach to learning advanced concepts in embedded and FPGA programming, students can begin learning this technology at a level appropriate for them while educators gain the confidence that this tool can accompany students from introductory to advanced courses. NI myRIO delivers the powerful hardware and software technology needed for students to complete meaningful projects in a single semester while being assured that they are learning on a tool that prepares them for their careers as professional engineers.


RIO Hardware Deployment Curve