| CPC H03K 19/018528 (2013.01) [G11C 16/102 (2013.01); G11C 16/32 (2013.01); G11C 16/3459 (2013.01)] | 13 Claims | 

| 
               1. A programming method of a non-volatile memory cell, the non-volatile memory cell comprising a memory transistor, the programming method comprising steps of: 
            limiting a channel current of the memory transistor lower than or equal to a limited current; and 
                providing a program voltage to a source terminal of the memory transistor, and providing a control signal to a gate terminal of the memory transistor, 
                wherein during a program cycle, a program action is performed, and the program cycle contains plural time periods, 
                wherein in a first time period of the plural time periods, the control signal is gradually decreased from a first voltage value, so that the memory transistor is firstly turned off and then turned on, wherein when the memory transistor is turned on, plural hot electrons are injected into the memory transistor, 
                wherein in a second time period of the plural time periods after the first time period, the control signal is gradually decreased from a second voltage value, so that the memory transistor is firstly turned off and then turned on, wherein when the memory transistor is turned on, the plural hot electrons are injected into the memory transistor, wherein the second voltage value is equal to the first voltage value plus a first voltage increment. 
               |