New experimental control system - Process-oriented programing
Motivations
Scalable quantum systems typically require many concurrently operating devices and dedicated data acquisition/processing to extract signals that would be hidden in noise sources. Unlike the sequential system, the order of concurrently executing procedures is determined at the run time. It is impractical to verify the validity of the control system by checking every state. Any unverified process could bury the signal or mimic artificial systematics. To solve this issue, we will collaborate with Prof. Pedersen's group in the computer science department to implement a novel process-oriented programming language - ProcessJ, specifically well-suited to concurrency. ProcessJ is a new language being invented and developed by Prof. Pedersen at UNLV; the basis for ProcessJ is the process algebra CSP, which means that programs written in ProcessJ can be model checked. This allows us, to a high degree of certainty, to verify that our control systems behave according to specifications. A control system can be made up of any number (even millions) of independent processes running concurrently and it can be proven free of unwanted behaviors. In addition, ProcessJ’s runtime system (the code that runs the code) is currently being proven to behave correctly, something no other standard programming-language has ever done before.
Application of ProcessJ in the experimental control
Under construction...
A hierarchical control system
While the modularized embedded systems and deadlock-free ProcessJ ensure the reliability and efficiency of low-level hardware design and programming, it is important to note that not all members of an experimental physics laboratory possess expertise in embedded systems or low-level programming languages. Additionally, maintenance, upgrades, and backward compatibility are vital for long-term operations and enhancements. For instance, Zhou group's optical frequency comb system will be utilized by approximately ten research groups across science and engineering schools for a diverse range of experiments. Each experiment may require unique settings and supplementary equipment, presenting a significant challenge in simultaneously accommodating all experiments and transitioning between them with minimal downtime. Moreover, proper training and equipment maintenance must be scheduled prior to instrument implementation. To address these requirements, we will develop and implement a hierarchical four-tier system that abstracts devices at each level for modularization and simplification.
Secure data management system
The progression of scientific research is heavily dependent on the reproducibility and trustworthiness of experimental data and processing code. With computers becoming indispensable for data collection and instrument control, implementing a reliable and secure data management system is of paramount importance. Regrettably, a majority of research groups continue to store and process data on local computers, presenting potential risks to data safety and imposing accessibility limitations. Relying on local computers for data storage can result in data loss or corruption, and without adequate backups or version control, reconstructing experiments becomes a daunting task. Furthermore, local computers are vulnerable to security breaches and malware attacks, which can jeopardize the integrity of the data and lead to inconvenience, inefficiency, and disputes regarding academic integrity.