3 research outputs found

    Verification of software-hardware hybrid systems

    Get PDF
    Verification of complex systems with multiple processors is difficult. The reason being that the generation of test cases for the whole system is quite complex. So, the system must be verified in parts and sequentially, i.e., verifying the software, hardware platform separately and the finally software running on the hardware platform. As verification of the MPSoC (Multiple-Systems-on-Chip) platform is beyond the scope of our research, we assume that the MPSoC hardware platform is already verified. Thus, we focus our research on the verification of the MPSoC software (application software running on the MPSoC platform) and the system consisting of the MPSOC software running on the MPSoC platform. Researchers have tried to verify the software portion by generating test cases using metaheutistics, constraint programming and combined metaheuristic- constraint programming approaches. But metaheuristic approaches are not capable of finding good solution as they may get blocked in local optima, whereas constraint programming approaches are not able to generate good test cases when the problem is large and complex. The combined metaheuristic-constraint programming approaches solve these limitations but lose many good test cases when they reduce the domain of the input variables. We want to generate test cases for software while overcoming the limitations mentioned. For this, we propose to combine metaheuristic and constraint programming approaches. In our approach, constraint programming solver will split the input variable domains before reducing them further to be fed into the metaheuristic solver that will generate test cases. Finally, at a later stage of our research, we want to verify the whole system consisting of an application software (DEMOSAIK or FFMPEG 4) running on an MPSoC architecture simulator, the ReSP platform. We propose to generate the test cases from the functional test objectives to check the proper functioning of the software running on the hardware platform. So, we frame the two research questions as: Verification of software by generating test cases so as to satisfy certain coverage criterion and cause the software to fail, and verification of the functional and structural coverage criteria(s) of the system as a whole. We report the results of the preliminary experiments conducted, which helps us to provide a path for the subsequent steps
    corecore