An attribute grammar interpreter as a knowledge engineering tool
Angewandte Informatik
Attribute-grammar interpreter for inexact reasoning
Information and Software Technology
Design, implementation and evaluation of the FNC-2 attribute grammar system
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Warren's abstract machine: a tutorial reconstruction
Warren's abstract machine: a tutorial reconstruction
A grammatical view of logic programming
A grammatical view of logic programming
Artificial intelligence: a modern approach
Artificial intelligence: a modern approach
An attribute evaluation of context-free languages
Information Processing Letters
Computer organization and design (2nd ed.): the hardware/software interface
Computer organization and design (2nd ed.): the hardware/software interface
Parallel execution of prolog programs: a survey
ACM Transactions on Programming Languages and Systems (TOPLAS)
Knowledge-Based System Diagnosis, Supervision, and Control
Knowledge-Based System Diagnosis, Supervision, and Control
Embedded System Design: A Unified Hardware/Software Introduction
Embedded System Design: A Unified Hardware/Software Introduction
Efficient reconfigurable embedded parsers
Computer Languages, Systems and Structures
A platform for the automatic generation of attribute evaluation hardware systems
Computer Languages, Systems and Structures
An efficient hardware implementation for AI applications
SETN'06 Proceedings of the 4th Helenic conference on Advances in Artificial Intelligence
Hi-index | 0.00 |
The conventional approach for the implementation of the knowledge base of a planning agent, on an intelligent embedded system, is solely of software nature. It requires the existence of a compiler that transforms the initial declarative logic program, specifying the knowledge base, to its equivalent procedural one, to be programmed to the embedded system's microprocessor. This practice increases the complexity of the final implementation (the declarative to sequential transformation adds a great amount of software code for simulating the declarative execution) and reduces the overall system's performance (logic derivations require the use of a stack and a great number of jump instructions for their evaluation). The design of specialized hardware implementations, which are only capable of supporting logic programs, in an effort to resolve the aforementioned problems, introduces limitations in their use in applications where logic programs need to be intertwined with traditional procedural ones in a desired application. In this paper, we exploit HW/SW codesign methods to present a microprocessor, capable of supporting hybrid applications using both programming approaches. We take advantage of the close relationship between attribute grammar (AG) evaluation and knowledge engineering methods to present a programmable hardware parser that performs logic derivations and combine it with an extension of a conventional RISC microprocessor that performs the unification process to report the success or failure of logic derivations. The extended RISC microprocessor is still capable of executing conventional procedural programs, thus hybrid applications can be implemented. The presented implementation increases the performance of logic derivations for the control inference process (experimental analysis yields an approximate 1000% -- 10 times increase in performance) and reduces the complexity of the final implemented code through the introduction of an extended C language called C-AG that simplifies the programming of hybrid procedural-declarative applications.