Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Li Hsien Yoong

dblp:33/7057 · DBLP profile ↗
← Back
5ranked-venue papers
4as first author
0since 2021 · last 2015
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 3 · 2 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
1 paper
Embedded and real-time systems · 100%
Software engineering, system software, and programming languages
1 paper
Programming languages and type systems · 67% Program verification · 33%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Embedded and real-time systems
cyber-physical system platforms
0.112009
A Synchronous Approach for IEC 61499 Function Block Implementation · IEEE Trans. Computers 2009
Programming languages and type systems
language semantics
0.012009
A Synchronous Approach for IEC 61499 Function Block Implementation · IEEE Trans. Computers 2009
Program verification
reactive system verification
0.012009
A Synchronous Approach for IEC 61499 Function Block Implementation · IEEE Trans. Computers 2009
Programming languages and type systems › domain-specific languages › synchronous languages
synchronous language semantics
0.012009
A Synchronous Approach for IEC 61499 Function Block Implementation · IEEE Trans. Computers 2009

Methods — techniques the papers use, named apart from their topics

translation to esterel · 0.2synchronous language semantics · 0.2
YearPublicationVenuePosition
2015 Synthesizing Multirate Programs from IEC 61499
abstract
IEC 61499 is a standard for designing industrial control systems using function blocks. Since its publication in 2005, several run-time environments have been developed as plausible implementations. Most of them, however, are poorly suited for use in safety-critical systems, as they are unable to guarantee deterministic behaviour and predictable timing. The use of different run-time environments results in subtle behavioural differences and complicates the effort of static timing analysis. We offer an alternative solution by leveraging the model-based approach to automatically synthesize multirate synchronous programs for a multitasking environment. Our approach preserves the well-known deterministic property of synchronous programs, while facilitating static timing analysis of IEC 61499 specifications. We achieve this without the need to introduce any foreign artefact to the standard. The schedulability criterion for tasks derived using our technique is given for the rate-monotonic scheduling policy. The viability of our approach is demonstrated through a code generator, which synthesizes multirate synchronous code for multi-task execution on the muC/OS-II real-time operating system.
Li Hsien Yoong, Partha S. Roop
ISORC1
2012 Implementing constrained cyber-physical systems with IEC 61499
abstract
Cyber-physical systems (CPS) are integrations of computation and control with sensing and actuation of the physical environment. Typically, such systems consist of embedded computers that monitor and control physical processes in a feedback loop. While modern electronic systems are increasingly characterized as CPS, their design and synthesis still rely on traditional methods, which lack systematic and automated techniques for accomplishment. Recently, IEC 61499 has been proposed as a standard for designing industrial process-control and measurement systems. It prescribes a component-based approach for developing industrial automation software using function blocks. Executable code can then be automatically generated and simulated from these function blocks. This bodes well for designers of CPS, who are more likely to be experts in specific industrial domains, rather than in computer science. The intuitive graphical nature and automatic code synthesis of IEC 61499 programs will alleviate the programming burden of industrial engineers, while ensuring more reliable software. While software synthesis from IEC 61499 programs is not new, the generation of efficient code from them has been wanting. This has made it difficult for function blocks to be used in software development for resource-constrained embedded controllers commonly employed in CPS. To address this, we present an approach that can generate very efficient code from function block descriptions. Experimental results from a benchmark suite shows that our approach produces substantially faster and smaller code compared to existing techniques.
Li Hsien Yoong, Partha S. Roop, Zoran A. Salcic
ACM Trans. Embed. Comput. Syst.1
2012 Synthesizing Globally Asynchronous Locally Synchronous Systems With IEC 61499
abstract
The IEC 61499 standard defines a generic architecture for designing distributed industrial control systems based on function blocks. The standard, however, lacks a formal model of computation to describe the behavior of function block compositions. While various models have been prescribed in the literature to define the composite behavior on a single computational node, few have been proposed to directly address compositions in a distributed setting. This paper proposes a globally asynchronous locally synchronous (GALS) model for distributed function block systems. The model provides an abstract way to view communication between function blocks without implying yet any particular implementation. This abstraction can then be subsequently refined to obtain various implementations with different tradeoffs. We do so using an approach that is fully compatible with the standard's notion of communication function blocks, which abstract underlying communication mechanisms from the application. As a contribution, we have developed a compiler that automatically synthesizes separate programs for a given distributed function block system without needing any additional middleware or run-time environment to execute the resulting distributed code. The efficacy of the proposed approach is demonstrated through an industrial case study.
Li Hsien Yoong, Gareth Shaw, Partha S. Roop, Zoran A. Salcic
IEEE Trans. Syst. Man Cybern. Part C1
2011 Compiling Esterel for Multi-core Execution
abstract
Esterel is a synchronous language suited for describing reactive embedded systems. It combines fine-grained parallelism with precise timing control for the execution of threads. Due to this, Esterel programs have typically been compiled into sequential code in software implementations, as tight synchronization between a large number of threads cannot be efficiently managed with an operating system (OS). This has enabled concurrent Esterel programs to be executed directly on single-core processors. Recently, however, multi-core processors have been increasingly used to achieve better performance in embedded applications. The conventional approach of generating sequential code from Esterel programs is unable to take advantage of multi-core processors. We overcome this limitation by compiling Esterel into a limited number of thread partitions (up to the number of available cores) to avoid the large overheads of implementing each Esterel thread separately within a conventional multithreading scheme. These partitions are then distributed onto separate cores using a static load balancing heuristic. The Esterel threads within a partition may then be dynamically scheduled with or without an OS. To evaluate the viability of this approach, we present experimental results comparing the execution of a set of benchmarks using one to four cores on the Intel Core 2 Quad with Linux, and one to two cores on the Xilinx Micro blaze without any OS. We have performed extensive benchmarking over large Esterel programs to illustrate that achieving throughput with parallel execution of Esterel is benchmark dependent.
Simon Yuan, Li Hsien Yoong, Partha S. Roop
DSD2
2009 A Synchronous Approach for IEC 61499 Function Block Implementation
abstract
IEC 61499 has been endorsed as the standard for modeling and implementing distributed industrial process measurement and control systems. The standard prescribes the use of function blocks for designing systems in a component-oriented approach. The execution model of a basic function block and the manner for event/data connections between blocks are described therein. Unfortunately, the standard does not provide exhaustive specifications for function block execution. Consequently, multiple standard-compliant implementations exhibiting different behaviors are possible. This not only defeats the purpose of having a standard but also makes verification of function block systems difficult. To overcome this, we propose synchronous semantics for function blocks and show its feasibility by translating function blocks into a subset of Esterel, a well-known synchronous language. The proposed semantics avoids causal cycles common in Esterel and is proved to be reactive and deterministic under any composition. Moreover, verification techniques developed for synchronous systems can now be applied to function blocks.
Li Hsien Yoong, Partha S. Roop, Valeriy Vyatkin, Zoran A. Salcic
IEEE Trans. Computers1