So, define a "soft" PLC ....
Does that mean it runs under Windows, Linux, MAC OS, or any other platform you care to mention ?
Does "soft" mean it has to load from disk, HDD or SSD ?
Does it mean that the OS is "generic" and not tailored to the task the CPU performs ?
I don't believe this is a way forward. PLCs are specialised and dedicated to one task. They must survive power outages, they must survive being underwater (yes, it has happened to me), they only have one job to do, so why complicate it by making it "soft" ?